2017-02-24 10 views
1

私はstackoverflowに新しいです、そして最近アンドロイドアプリのデザインに興味があります。 私はmcuのコーディングのためのCプログラマーでしたので、javaの構文に精通していません。#define in java/android studioを使用しています

if (GOOD_MOOD) 
    GO_TO_WORK 
else if (BAD_MOOD) 
    SICKLEAVE 
else 
    ... 

#define (tried && sleepy) BAD_MOOD 
#define (happy && joy)  GOOD_MOOD 

は次のように使用するには:Cまたは私は前に使用されるいくつかのコンパイラで

、彼らが好きな私はそれに文を置くことができる「の#define」と呼ばれる構文をサポート

javaには次のような構文がありますか?代わりに、代わりに多くのブール変数を定義する必要がありますか?

+0

私はその既存の質問について私の見解を続けますか? – Simon

+0

もう1つのこと:ここで頻繁に投稿することを検討する場合は、[ヘルプ]に時間を費やしてください。どのようにここに尋ねるのかを学ぶ... – GhostCat

答えて

0

Javaには#defineはありません。または他の種類のマクロサポート。 には前処理の概念さえありません。

ご意見をお寄せください:まず、元に戻ってください。 C知識を適用してJavaを学ぶことはありません。期間。 CとJavaの重要な違いをまとめた既存の文書が多数あります。あなたはそのようなものを検索して読むことから始めます。

次に、実際のの違いは、Javaがオブジェクト指向のプログラミング言語であることです(100%ではありません)。 Cはではなく、である。構文要素を変更するだけでなく、異なるの概念を適用します。ここの最初の出発点は、SOLIDの原則です。

そして、Javaコーディングスタイルのガイドのように、 "変数名にno _ chars"(SOME_CONSTANTを除く)という単純なことを指示する微妙なものがあります。あなたはJavaでこのようなことにアプローチする方法をある

public class Class { 
    private final static int MAX_COUNT_OF_STUDENTS = 50; 

    private int numberOfStudents; 
    private int numberOfBooks; 

    public void setNumberOfStudents(int newCount) { 
    numberOfStudents = newCount; 
    } 

    public boolean isFull() { 
    return (numberOfStudents <= MAX_COUNT_OF_STUDENTS); 
    } 
    ... 

そして、あなたの一例について、簡単な例は次のようになります。重要なことはのデザインあなたがモデル化しようとしている現実世界のオブジェクトを表すクラスです。必要な振る舞いをメソッドとして追加します。

それ以上:C言語の世界でも、このように#definesを使用するのは本当に慎重になります。はい、彼らは便利で彼らの場所を持っています。あなたの例のような安全なタイプの単語にそれらを単に使用すると、私はが悪いと思うでしょう練習。

+0

ブール変数の数値を作るのが良い方法だと思いますか? つまり ブールclass_is_full = false; ブールbooks_are_ready = false; ブール値start_the_class = false; if(number_of_students == 50)class_is_full = true; if(number_of_books> = 50)books_are_ready = true; if(class_is_full && books_are_ready) start_the_class = true; 基本的には、自分のコードがわかりやすいようにしたいと思っていました。 – Simon

+0

私は自分の答えを強化しました。しかし記録のためだけに:より多くの質問で戻って来ないでください。あなたは非常に基本的なレベルにあります。それはあなたが勉強することを必要とします。これはここでは無料のために教えてくれた場所ではありません;-) – GhostCat

+0

私の例に基づいて基本的なデモンストレーションをしていただきありがとうございます。私はいくつか(すべてではない)Cとjavaの違いを理解しています。ソリッドの原則は合理的ですが、私に従うのは難しいです。しかし、とにかく、それは私がどこから始めるべきかです。再度、感謝します。 – Simon

関連する問題