プログラミング

プロおよび熱狂的プログラマーのためのQ&A

11
コレクションがnullの場合、.NET foreachループがNullRefExceptionをスローするのはなぜですか?
だから私はこの状況に頻繁に遭遇しDo.Something(...)ます...そこでは次のようにnullコレクションを返します: int[] returnArray = Do.Something(...); 次に、このコレクションを次のように使用してみます。 foreach (int i in returnArray) { // do some more stuff } 私はただ知りたいのですが、なぜforeachループがnullコレクションで動作しないのですか?反復が0の場合、nullコレクションで実行されるのは理にかなっているようです。代わりにがスローされますNullReferenceException。なぜこれが起こり得るのか誰でも知っていますか? APIが何を返すのかが明確でないAPIを使用しているので、これは面倒ですif (someCollection != null)。 編集:をforeach使用して説明していただきありがとうございますGetEnumerator。取得する列挙子がない場合、foreachは失敗します。言語/ランタイムが列挙子を取得する前にnullチェックを実行できない、または実行できない理由を私は尋ねていると思います。動作はまだ明確に定義されているように思えます。
231 c#  .net 

15
文字列が空かどうかをチェックする関数が常にtrueを返すのはなぜですか?[閉まっている]
閉まっている。この質問は再現性がないか、タイプミスが原因です。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 16日前休業。 この質問を改善する 文字列が空でない場合はtrueを返し、文字列が空の場合はfalseを返すisNotEmpty関数があります。空の文字列を渡すと機能しないことがわかりました。 function isNotEmpty($input) { $strTemp = $input; $strTemp = trim($strTemp); if(strTemp != '') //Also tried this "if(strlen($strTemp) > 0)" { return true; } return false; } isNotEmptyを使用した文字列の検証が行われます。 if(isNotEmpty($userinput['phoneNumber'])) { //validate the phone number } else { echo "Phone number not entered<br/>"; } 文字列が空の場合、elseは実行されません。理由はわかりません。誰かがこれに光を当ててください。
231 php  string  validation 

10
hashCode()をオーバーライドするオブジェクトの一意のIDを取得するにはどうすればよいですか?
JavaのクラスがhashCode()をオーバーライドしない場合、このクラスのインスタンスを出力すると、適切な一意の番号が得られます。 ObjectのJavadocはhashCode()について述べています: 合理的に実用的である限り、Objectクラスで定義されたhashCodeメソッドは、個別のオブジェクトに対して個別の整数を返します。 しかし、クラスがhashCode()をオーバーライドするとき、どのようにしてその一意の番号を取得できますか?
231 java  identity  hashcode 

9
ターミナルでRubyスクリプトを実行する方法は?
Macに必要なすべてのもの(Ruby、Rails、Homebrew、Gitなど)を設定し、小さなプログラムも作成しました。さて、ターミナルでそれをどのように実行しますか?Redcarでプログラムを作成して.rbとして保存しましたが、ターミナルから実行する方法がわかりません。プログラムを実行して、実際に機能するかどうかを確認したいと思います。どうすればよいですか?
231 ruby  terminal 

7
GitHubで他の人のコードに貢献するにはどうすればよいですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 7か月前に閉鎖。 この質問を改善する GitHubの特定のプロジェクトに貢献したいと思います。フォークすべきか?ブランチ?何が推奨され、どのように行うのですか?
231 git  open-source  github 

9
入力サイズと幅
<input name="txtId" type="text" size="20" /> または <input name="txtId" type="text" style="width: 150px;" /> 最適なクロスブラウザコードはどれですか? もちろん、要件によって異なりますが、人々がどのように決定し、どのような根拠に基づいているかを知りたいのです。
231 html  css 

23
オブジェクト指向プロジェクトをどのように設計しますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 3年前休業。 この質問を改善する 多くのクラスがあり、拡張可能である必要がある大規模なプロジェクト(私にとって)に取り組んでいますが、プログラムをどのように計画するか、およびクラスがどのように相互作用する必要があるかわかりません。 私は数学期前にOODコースを受講し、そこから多くを学びました。UMLの作成や、要件ドキュメントのオブジェクトやクラスへの変換などです。シーケンス図も学びましたが、どういうわけか講義を逃したり、なかなか私にこだわりませんでした。 以前のプロジェクトでは、コースから学んだ方法を使用してみましたが、通常は「ええ、私が考えていたもののように見えます」と言えるとすぐに、マックを掘って追加したくありません。新機能。 Steve McConnellのコードコンプリートのコピーを手に入れました。これは、ここや他の場所で素晴らしいと絶えず聞いています。デザインの章を読みましたが、探している情報が得られなかったようです。彼はそれがカットアンドドライプロセスではなく、主にヒューリスティックスに基づいていると彼が言っているのを知っていますが、私は彼のすべての情報を取得して私のプロジェクトに適用することはできないようです。 では、高レベルの設計段階(プログラミングを始める前)で、必要なクラス(特に、「実世界のオブジェクト」に基づいていないクラス)を決定し、それらがどのように相互に作用するかを判断するにはどうすればよいでしょうか。 具体的には、どのような方法を使用することに興味がありますか?通常、最終製品を厳密に表す優れたクリーンなデザインを実現するプロセスはどのようなものですか?

5
コマンドラインからMaven Javadocプラグインを無効にするにはどうすればよいですか?
pom.xmlには次のような宣言があります <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> コマンドラインからそれをオフにする方法はありますか? それをプロファイルに抽出できることは知っていますが、それは私が望んでいることではありません。

29
Angularjs-ng-cloak / ng-show要素が点滅する
ディレクティブ/クラスng-cloakまたはを使用したangular.jsに問題がありng-showます。 Chromeは正常に動作しますが、Firefoxがng-cloakまたはで要素を点滅させていng-showます。私見それはng-cloak/ ng-showへの変換が原因ですstyle="display: none;"、おそらくFirefoxのJavaScriptコンパイラは少し遅いので、要素がしばらく表示されてから非表示になりますか? 例: <ul ng-show="foo != null" ng-cloak>..</ul>

16
Android向けにTextViewを自動調整
バックグラウンド 多くの場合、与えられた境界にTextViewのフォントを自動調整する必要があります。 問題 悲しいことに、この問題について話しているスレッドや投稿(および推奨される解決策)はたくさんありますが(例:ここ、ここ、ここ、ここ)、実際にうまく機能するものはありません。 だからこそ、実際の取引が見つかるまで、それぞれをテストすることにしました。 私はそのようなtextViewからの要件は次のようになるべきだと思います: フォント、書体、スタイル、および文字のセットを使用できるようにする必要があります。 幅と高さの両方を処理する必要があります 制限のためにテキストが収まらない場合を除き、切り捨ては行いません(例:長すぎるテキスト、小さすぎる使用可能なサイズ)。ただし、必要に応じて、水平/垂直スクロールバーをリクエストすることもできます。 複数行または単一行を許可する必要があります。複数行の場合、最大行と最小行を許可します。 計算が遅くなることはありません。最適なサイズを見つけるためにループを使用していますか?少なくとも最適化し、毎回1ずつサンプリングを増分しないでください。 複数行の場合、サイズ変更またはより多くの行を使用することを許可するか、「\ n」文字を使用して自分で行を選択できるようにする必要があります。 私が試したこと 私は非常に多くのサンプル(リンクのサンプルを含めて、私が書いた)を試してみましたが、ケースを処理するためにそれらを変更することも試みたと話しましたが、実際に機能するものはありません。 TextViewが正しく自動調整されるかどうかを視覚的に確認できるサンプルプロジェクトを作成しました。 現在、私のサンプルプロジェクトでは、テキスト(英語のアルファベットと数字)とtextViewのサイズのみをランダム化し、1行のままにしておきますが、これでも、試したどのサンプルでもうまく機能しません。 ここにコードがあります(ここにもあります): ファイル res/layout/activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:text="Button" /> <FrameLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_above="@+id/button1" android:layout_alignParentLeft="true" android:background="#ffff0000" android:layout_alignParentRight="true" android:id="@+id/container" android:layout_alignParentTop="true" /> </RelativeLayout> ファイル src/.../MainActivity.java public class MainActivity …

4
jquery DataTablesの初期ソートを無効にする方法はありますか?
私はjquery DataTablesプラグインを使用しています。彼らのドキュメントから: 並べ替えが有効な場合、DataTablesは初期化時に最初のパスの並べ替えを実行します。この変数を使用して、並べ替えを実行する列と並べ替えの方向を定義できます。aaSorting配列には、最初に列のインデックスと方向文字列(「asc」または「desc」)を含む、ソートされる各列の配列が含まれている必要があります。 並べ替えを有効にして、初期化時にこの最初のパスの並べ替えを無効にすることはできますか?私は現在、初期ソートサーバーサイドを実行しており、ソート機能が必要ですが、この初期ソート機能は必要ありません。




17
Xcodeを起動せずにiPhoneエミュレータを実行するにはどうすればよいですか?
Snow Leopardを実行している私の古いMacで、スポットライトに「ios」と入力すると、iPhone / iPadエミュレーターが単独で起動します。 それ以来、Lionを実行する新しいマシンを入手する必要がありました。Xcode for Lionをインストールしました。設定パネルから開発者ツールオプションをインストールしました。 しかし、「ios」オプションはもうありません:( Xcodeを実行し、空のプロジェクトを作成してから、runオプションでエミュレーターを起動するのが唯一の方法のようです。 私はintertubesとfacewebsを検索して検索しましたが、何も助けにはなりません。 Lionでエミュレータのみを実行する方法を知っている人はいますか? 更新:これは以下の@ike_loveスレッドへの応答です。その答えはすべてのヨセミテマシンで動作することを保証するものではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.