タグ付けされた質問 「if-statement」

「if」ステートメントは、ほとんどのプログラミング言語のフロー制御構造であり、バイナリ条件に応じて実行フローを分岐し、通常は実行時に評価されます。ifステートメントは一般的に条件付きとも呼ばれます。このタグを使用するときは、質問が言語固有である場合は「java」などの適切な言語タグも含めてください。

6
Bashの単一角括弧と二重角括弧の違い
私は約bashの例を読んでifいますが、いくつかの例は単一の角括弧で書かれています: if [ -f $param ] then #... fi 角かっこが二重になっているもの: if [[ $? -ne 0 ]] then start looking for errors in yourlog fi 違いはなんですか?
161 bash  if-statement 

6
ifelse()がDateオブジェクトを数値オブジェクトに変換しないようにする方法
関数ifelse()を使用して日付ベクトルを操作しています。結果はクラスDateであると予想しましたが、numeric代わりにベクトルを取得することに驚いていました。次に例を示します。 dates <- as.Date(c('2011-01-01', '2011-01-02', '2011-01-03', '2011-01-04', '2011-01-05')) dates <- ifelse(dates == '2011-01-01', dates - 1, dates) str(dates) ベクトル全体で操作を実行するとDateオブジェクトが返されるため、これは特に驚くべきことです。 dates <- as.Date(c('2011-01-01', '2011-01-02', '2011-01-03', '2011-01-04','2011-01-05')) dates <- dates - 1 str(dates) Dateベクターを操作するために他の関数を使用する必要がありますか?もしそうなら、どのような機能ですか?そうでない場合ifelse、入力と同じタイプのベクトルを強制的に返すにはどうすればよいですか? のヘルプページifelseは、これがバグではなく機能であることを示していますが、私がまだ驚くべき動作であることが判明したものの説明を見つけるのに苦労しています。
161 r  datetime  if-statement 

15
条件付きステートメントを短縮する方法
次のような非常に長い条件文があります。 if(test.type == 'itema' || test.type == 'itemb' || test.type == 'itemc' || test.type == 'itemd'){ // do something. } この表現/ステートメントをより簡潔な形式にリファクタリングできるかどうか疑問に思っていました。 これを達成する方法について何か考えはありますか?

14
C / C ++でのNULLポインターのチェック[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前休業。 この質問を改善する 最近のコードレビューでは、寄稿者がNULLポインターのすべてのチェックが次の方法で実行されるように強制しようとしています: int * some_ptr; // ... if (some_ptr == NULL) { // Handle null-pointer error } else { // Proceed } の代わりに int * some_ptr; // ... if (some_ptr) { // Proceed } else { // Handle null-pointer error } 「このポインターがNULLではないことを確認してください」と明示的に言っているという意味で彼のやり方はもう少し明確であることに同意しますが、このコードに取り組んでいる誰もがポインター変数をifステートメントは暗黙的にをチェックしていNULLます。また、2番目の方法では、ilkのバグが発生する可能性が低くなります。 if (some_ptr = NULL) これは、見つけてデバッグするための絶対的な苦痛です。 …



3
Swiftのifステートメント内で複数のlet-asを使用する
私は辞書から2つの値をアンラップしていて、それらを使用する前に、それらをキャストして正しいタイプかどうかをテストする必要があります。これは私が思いついたものです: var latitude : AnyObject! = imageDictionary["latitude"] var longitude : AnyObject! = imageDictionary["longitude"] if let latitudeDouble = latitude as? Double { if let longitudeDouble = longitude as? Double { // do stuff here } } ただし、クエリを1つにまとめる場合は、2つをパックします。だからそれはそのようなものになるでしょう: if let latitudeDouble = latitude as? Double, longitudeDouble = longitude as? Double { // …

17
ifステートメントでの割り当て
クラスAnimalとそのサブクラスがありDogます。次の行をコーディングしていることがよくあります。 if (animal is Dog) { Dog dog = animal as Dog; dog.Name; ... } 変数Animal animal;。 次のようなものを書くことができる構文はありますか? if (Dog dog = animal as Dog) { dog.Name; ... }
142 c#  casting  if-statement 

16
if-elseブロックの「if(0)」ブロックの目的は何ですか?
私の質問は、件名で言及した行についてであり、製品コード内の多くの場所で見ることができます。 全体的なコードは次のようになります。 if (0) { // Empty braces } else if (some_fn_call()) { // actual code } else if (some_other_fn_call()) { // another actual code ... } else { // default case } 他のブランチは私の質問には関係ありません。if (0)ここに置くことの意味は何だろう。中括弧は空なので、コードのブロックにコメントを付けることは想定されていません。コンパイラーに何らかの最適化を強制するのでしょうか、それともその意図は異なりますか? 私はこの明示的なケースをSOとインターネットで検索しようとしましたが、成功しませんでした。JavaScriptには同様の質問がありますが、Cにはありません。別の質問があります。`if`条件でゼロが割り当てられるとどうなりますか?、しかしそれは変数へのゼロ代入について議論しており、 'if(0)'の使用法自体については触れていません。
141 c  if-statement 

14
1行のif条件割り当て
次のコードがあります num1 = 10 someBoolValue = True 私はの値に設定する必要があるnum1とし20た場合someBoolValueですTrue。それ以外は何もしません。だから、これはそのための私のコードです num1 = 20 if someBoolValue else num1 どういうわけか私は...else num1それをよりきれいに見せるためにその部分を避けることができますか?と同等 if someBoolValue: num1 = 20 私はそれを次の...else passように置き換えてみました:num1=20 if someBoolValue else pass。私が得たすべては構文エラーでした。また、私はその...else num1部分を省略できませんでした。

8
何かを「試行」して例外をキャッチするか、最初に例外を回避することが可能かどうかをテストする方が良いですか?
if何かが有効かどうかをテストする必要tryがありますか、それとも例外をキャッチするだけですか? 一方通行の方が望ましいという確固とした文書はありますか 一方向にもっとpythonicですか? たとえば、私は: if len(my_list) >= 4: x = my_list[3] else: x = 'NO_ABC' または: try: x = my_list[3] except IndexError: x = 'NO_ABC' いくつかの考え... PEP 20は言う: エラーは黙って渡ってはなりません。 明示的に沈黙させない限り。 のtry代わりにを使用すると、if警告なしにエラーが発生したと解釈されますか?もしそうなら、それをこのように使用して明示的に沈黙させ、それでそれを大丈夫にしますか? 私は、物事が一方向にしかできない状況については言及していません。例えば: try: import foo except ImportError: import baz

9
&&(AND)および|| (OR)IFステートメント内
私は次のコードを持っています: if(!partialHits.get(req_nr).containsKey(z) || partialHits.get(req_nr).get(z) < tmpmap.get(z)){ partialHits.get(z).put(z, tmpmap.get(z)); } partialHitsHashMapはどこですか。最初のステートメントが真実の場合はどうなりますか? Javaは2番目のステートメントを引き続きチェックしますか?最初のステートメントがtrueになるためには、HashMapに指定されたキーが含まれていてはならないため、2番目のステートメントがチェックされている場合はを取得しNullPointerExceptionます。 簡単に言えば、次のコードがある場合 if(a && b) if(a || b) Javaはチェックするb場合はa最初のケースではとの場合はfalseをされたa第二の場合には本当ですか?
137 java  if-statement 

9
ワンショットの「if」を書く最もエレガントな方法
C ++ 17以降ifでは、次のように1回だけ実行されるブロックを記述できます。 #include <iostream> int main() { for (unsigned i = 0; i < 10; ++i) { if (static bool do_once = true; do_once) { // Enter only once std::cout << "hello one-shot" << std::endl; // Possibly much more code do_once = false; } } } 私はこれを考えすぎているかもしれないことを知っています、そしてこれを解決する他の方法がありますが、それでも-このようにこれを書くことは可能であるためdo_once = false、最後にの必要はありませんか? …
136 c++  if-statement  c++17 

8
if-else構造のバッチファイルの使用方法
if-else構造のバッチファイルの構造について質問があります。各コマンドは個別に実行されますが、「if-else」ブロックを安全に使用できなかったため、プログラムのこれらの部分は機能しません。これらのパーツを実行するにはどうすればよいですか?ありがとうございました。 IF %F%==1 IF %C%==1 ( ::copying the file c to d copy "%sourceFile%" "%destinationFile%" ) ELSE IF %F%==1 IF %C%==0 ( ::moving the file c to d move "%sourceFile%" "%destinationFile%" ) ELSE IF %F%==0 IF %C%==1 ( ::copying a directory c from d, /s: boş olanlar hariç, /e:boş olanlar …

10
Thymeleafでif-elseを行う方法は?
簡単な操作を行うための最善の方法は何だif- elseThymeleafに? Thymeleafで同じ効果を達成したい <c:choose> <c:when test="${potentially_complex_expression}"> <h2>Hello!</h2> </c:when> <c:otherwise> <span class="xxx">Something else</span> </c:otherwise> </c:choose> JSTLで。 私がこれまでに考えたこと: <div th:with="condition=${potentially_complex_expression}" th:remove="tag"> <h2 th:if="${condition}">Hello!</h2> <span th:unless="${condition}" class="xxx">Something else</span> </div> potentially_complex_expression2回評価したくありません。そのため、ローカル変数を導入しましたcondition。それでも、th:if="${condition}との両方を使用するのは好きではありませんth:unless="${condition}"。 LETの発言:重要なことは、私は2個の異なるHTMLタグを使用することであるh2とspan。 それを達成するためのより良い方法を提案できますか?

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