黑马程序员技术交流社区

标题: 变量初始化值问题 [打印本页]

作者: Lam    时间: 2014-5-5 16:01
标题: 变量初始化值问题
本帖最后由 Lam 于 2014-5-5 17:36 编辑
  1. class IfDemo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int x=3;
  6.                 if (x==1)
  7.                 {
  8.                         System.out.println("a");
  9.                 }
  10.                 else if (x==2)
  11.                 {
  12.                         System.out.println("b");
  13.                 }
  14.                 else
  15.                 {
  16.                         System.out.println("c");
  17.                 }
  18.         }
  19. }
复制代码


变量x的初始化值是随便赋予的吗?
作者: 大恶魔先森~    时间: 2014-5-5 16:13
没太听懂你的问题是什么?
作者: Lam    时间: 2014-5-5 16:23
大恶魔先森~ 发表于 2014-5-5 16:13
没太听懂你的问题是什么?

我是想问 int  x=?       x的值是自己随便写的吗?
作者: Lin0411    时间: 2014-5-5 16:25
int x = 3;是将3赋给x变量。
if(x==1) 中的==不是赋值运算符,而是判断变量x所指向的值是否是1.
作者: 大恶魔先森~    时间: 2014-5-5 16:33
是啊,这个是随便赋值的啊,随便赋什么值,下面的if语句总有一个会运行。当赋值1时,结果为a;当赋值2时,结果为b;当赋值其他值时,运行else语句,结果为c。
作者: 彭旭文    时间: 2014-5-5 18:17
"="和”==“的区别
”=“:这个符号并非我们数学运算的等于,它是一种赋值运算,是把左边的值赋给右边的变量,使变量的值变成右边的值。
”==“:初步可以理解成数学中的等于,用于判断左边的数值是不是等于右边的数值。
按照你的程序来看,当你定义了一个int的变量X后,你可以对这个X进行赋值(任何int值都可以,如果你赋值的类型不是int类型,那么程序编译的时候会报错的)。你的程序已经把3赋值给了X。所以变量X的数值就是3了。
进入IF语句,程序就会判定X的值是否等于1,如果x==1,输出a,否则进入下一条判断X==2,以此类推...
希望可以帮到楼主解决问题...


作者: Mr.Ji    时间: 2014-5-5 18:58
x的值就是随便赋的啊,“=”号是赋值,“==”是判断是不是相等。
作者: Lam    时间: 2014-5-5 20:26
彭旭文 发表于 2014-5-5 18:17
"="和”==“的区别
”=“:这个符号并非我们数学运算的等于,它是一种赋值运算,是把左边的值赋给右边的变 ...

谢谢你详细的解答,感谢!:handshake
作者: 彭旭文    时间: 2014-5-5 20:44
Lam 发表于 2014-5-5 20:26
谢谢你详细的解答,感谢!

客气!能帮上你就好...:handshake
作者: Lam    时间: 2014-5-5 22:53
彭旭文 发表于 2014-5-5 20:44
客气!能帮上你就好...

你报名了吗?我也想报黑马,正在看视频,认识一下,说不定能一块儿:lol
作者: 彭旭文    时间: 2014-5-7 01:15
Lam 发表于 2014-5-5 22:53
你报名了吗?我也想报黑马,正在看视频,认识一下,说不定能一块儿

还没呢!也是在看视频ing...准备38期,深圳的!:):handshake
作者: Lam    时间: 2014-5-7 07:41
彭旭文 发表于 2014-5-7 01:15
还没呢!也是在看视频ing...准备38期,深圳的!

我准备北京的:)
作者: 彭旭文    时间: 2014-5-8 00:36
Lam 发表于 2014-5-7 07:41
我准备北京的

37?   39?   要是赶得上就深圳的38,要是赶不上那就得北京了...因为深圳开班比较少,也要配合下自己的学习进度...:):):)
作者: Lam    时间: 2014-5-8 10:45
彭旭文 发表于 2014-5-8 00:36
37?   39?   要是赶得上就深圳的38,要是赶不上那就得北京了...因为深圳开班比较少,也要配合下自己的学 ...

差不多38  39吧,原本想一个月看完视频,报37的,可是发现没那么容易:(效率有点低:Q,说不定到时候咱俩就是一个班的,哈哈!:lol
作者: 彭旭文    时间: 2014-5-8 16:00
Lam 发表于 2014-5-8 10:45
差不多38  39吧,原本想一个月看完视频,报37的,可是发现没那么容易效率有点低,说不定到时候咱俩就 ...

一切皆有可能哦...;P一起努力加油吧!:victory::lol
作者: 奇迹    时间: 2014-5-9 02:39
局部变量必须赋值,
因为他很有可能是上一个栈中留下的垃圾内存




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2