Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
#定义在java/android studio中的使用_Java_C - Fatal编程技术网

#定义在java/android studio中的使用

#定义在java/android studio中的使用,java,c,Java,C,我是stackoverflow的新手,最近对android应用程序设计感兴趣。 我是一名C程序员,负责mcu编码,所以不熟悉java语法 在C或我以前使用过的一些编译器中,它们支持一种称为“#define”的语法,我可以在其中放入一条语句,如: #define (tried && sleepy) BAD_MOOD #define (happy && joy) GOOD_MOOD 要像这样使用: if (GOOD_MOOD) GO_TO_WORK

我是stackoverflow的新手,最近对android应用程序设计感兴趣。 我是一名C程序员,负责mcu编码,所以不熟悉java语法

在C或我以前使用过的一些编译器中,它们支持一种称为“#define”的语法,我可以在其中放入一条语句,如:

#define (tried && sleepy)   BAD_MOOD
#define (happy && joy)      GOOD_MOOD
要像这样使用:

if (GOOD_MOOD)
  GO_TO_WORK
else if (BAD_MOOD)
  SICKLEAVE
else
  ...
java有这样的语法吗?或者,我应该定义许多布尔变量吗?

Java没有#define;或任何其他类型的宏观支持;因为它 甚至没有预处理的概念

鉴于你的评论:首先,你真的想退后一步。你不能通过应用你的C语言知识来学习Java。时期有许多现有文档总结了C和Java之间的重要区别;你从搜索和阅读这些东西开始

然后:real的区别在于Java是一种(大量但不是100%)面向对象的编程语言;C是而不是。因此,您不仅要更改语法元素;您可以应用不同的概念。这里的第一个出发点是原则

还有一些微妙的东西,比如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 );
  }
  ...
公共类{
学生的私人最终静态整数最大计数=50;
私人学生;
私人书籍;
public void setNumberOfStudents(int newCount){
numberOfStudents=newCount;
}
公共布尔值isFull(){

return(numberOfStudents)那么你认为对布尔变量进行编号是一种好方法吗?例如,布尔类是完整的=false;布尔类书籍是准备好的=false;布尔类开始是错误的;如果(numberOfStudents==50)类书籍是完整的=true;如果(书籍的数量>=50)书籍是准备好的=true;如果(类书籍是完整的&书籍是准备好的)start_the_class=true;基本上,我想让我的代码看起来更容易理解。我增强了我的答案;但为了记录在案:不要带更多的问题回来。你处于非常基本的水平;这需要你学习。这里不是一个你可以免费教书的地方;-)感谢您花时间根据我的示例演示基本原理。我了解一些(不是全部)C和java之间的不同。这些坚实的原则听起来很合理,但我很难理解。但是,这是我应该开始的地方。再次感谢。你非常欢迎我继续我对现存问题的看法。还有一件事:如果你考虑在这里更频繁地张贴,花些时间在这里;