javajava 语法糖问题

java语法问题_百度知道
java语法问题
初级的DVD管理器的项目别的都没什么问题,就是在执行case4的时候,会出现case5的步骤,不知道是哪里的break打错了,还是别的哪里错了希望有人指正源代码附在文后case 4:
System.out.println(&----&借出DVD&);
System.out.print(&请输入要借出的DVD名称:...
我有更好的答案
你可以在case4最后再加一个break
采纳率:87%
来自团队:
为您推荐:
其他类似问题
您可能关注的内容
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。博客分类:
Java的基本语法
对HelloWorld.java的解释
定义类(其中 public 是类的修饰符& class表示该java文件是个类 HelloWorld是类名)
定义区块(用大括号{}表示类的范围和方法的范围)
定义main方法(这是java程序的入口)
在main方法中需要执行的语句(在main方法的定义区块内写main方法要执行的程序)
public class HelloWorld {
public static void main(String[] args) {
System.out.println("你好!兄弟们!");
}
}
Java的注释解释
Java的中的注释分单行注释,多行注释,文档注释
单行注释://注释
多行注释:/*注释*/
文档注释:/**文档注释内容*/
手册文档的作用
多行注释可以嵌套单行注释
对Scanner的使用
Scanner类可以用来接收用户从控制台输入的信息,该类在我们的Java基础阶段会经常使用
用于辅助教学,但在实际工作中基本不用。
运行结果为
在java中print 和println输出的区别
Java中常用的转义符
\\&&& 反斜杠
\’&&& 单引号
\”&&& 双引号
\n&&& 换行
\t&&&& 跳格(tab 键)
Printf的使用
%%
在字符串中显示%
以10进位整数方式输出,提供的数必须是Byte、Short、 Integer、Long、或BigInteger
将浮点数以10进位方式输出,提供的数必须是Float、Double或 BigDecimal
将浮点数以10进位方式输出,并使用科学记号,提供的数必须是Float、 Double或BigDecimal
将字符串格式化输出 (S代表以大写形式输出)
将"true"或"false"输出(或"TRUE"、"FALSE",使用 %B)。另外,非null值输出是"true",null值输出是"false"
Printf是可以使用占位符的输出也可以进行格式化输出
如果输入中文出现乱码请在运行配置中配置console 控制台编码(将编码改为gbk)
Java中的基本数据类型(Primitive type)
&&& 整数(java中整数会根据前面的变量自动匹配)
字节 (byte)
专门储存位数据
占一个字节&& (-128至127) (-1*2的七次方 ~ 2的七次方)
短整数(short)(占2个字节)(-3)
整数(int)(占4个字节)
长整数(long)(占8个字节)(通常后面加L)
浮点数(java存放浮点型默认用的就是double)
浮点数(float)(占4个字节) (通常后面加F)
(1.至3.) (有效小数位6-7位)
双精度浮点数(double)(占8个字节) (通常后面加D)
(4.4至1.8) (有效小数位15位)
字符 (char)
采Unicode编码
前128个字符编码与ASCII编码兼容
每个字符数据类型占两个字节
可储存的字符范围由'\u0000'到'\uFFFF‘
无论是一个数字,一个字母还是一个汉字在Java中都是一个字符,字符用单引号引起 ‘A’ ‘1’ ‘你’
布尔型 (boolean)
占内存2个字节
可储存true与false两个数值,在Java中布尔型只有true和false两个值,没有0和1,yes和no.
变量和常量
注意 1、加号 在数据运算中表示数字相加。在字符串参与时表示字符串相连接
2、/& 当整数除整数时表示取模(取整),有一个为字符型(则结果为浮点型)
(即整型和整型(/,%)运算结果一定为整数)(有浮点型参与的运算(/,%)结果为浮点型)
3、注意byte,short,char的运算会响转化为int进行运算
//再谈printf
再谈基本数据类型(转型之向下强转)
(精确度的大小有两个个标准1、浮点数中允许小数的位数(位数越多精度越高) (即浮点数一定比整数精度要高)2、如果同为整数则精度是(所占字节数越高精度越高))
在Java中低精度类型会自动向上转型的,如果从高精度到低精度需要强转。(注布尔型不参与转型)(如果long向float转型 float会采用科学记数法的方式来转型)
类型byte,short,char 类型在运算时,会自动转型成int
比较运算符
这六种比较数据类型适合所有基本数据类型之间的比较,比较的结果是个布尔型。(布尔型只能和布尔型之间比较)
条件运算符(又称三元运算符)
题目计算一个数是否为奇数
逻辑运算符
&&
逻辑运算符两侧必须是布尔型数据(逻辑运算符单侧运算如果一侧成立了另一侧将不被执行&&&& 例如 比较式1&&比较2如果比较式1为false则比较式2将不会进行比较)
&
位运算(了解)
知道8421快速算法
利用&判断数的奇偶(掌握)
利用^进行简单的加密(了解)
递增运算和递减运算符
(注意:递增和递减运算符一定是要写在变量上 如:++8这是不可以的)
将递增或递减运算符写在变量之前,是先加一(减一)运算,然后赋值。
将递增或递减运算符写在变量之后,是先赋值,然后进行加一(减一)运算。
&&&&&& 自运算符列表
自运算和正常赋值运算(在结果转型方面小有差别:自运算可实现自动转型)
条件语句 IF
&
& 题目用 if else 语句求 奇偶数
&
注意在一组条件判断语句中else if 可以有多个 但是 if else 只能有一个
Switch (条件选择器)
Case中只能是 byte,short,int,char还有枚举类型& 所以 switch中千万不能写比较式。
switch(n)
{
case n2:statement:
default:statement
}
n为选择因子(变量,表达式),其作用就是作为分支条件的判断,其值一旦和某个case的常数匹配成功,就会执行其后的语句,并且直到遇到break语句为止。这意味着,如果一个case后无break语句,它不会跳出,会继续按顺序执行下一个case语句,直到其后有break语句或所有后面case语句执行完了为止。 注意n1,n2...必须为常量
题目:打印一个学生的分数等级(100满分)90分以上A,80分以上B,70分以上C,
60分以上D,其它情况不及格
题目:根据你输入的日期算出该月有多少天
(闰年& 满足(能被400整除)或(能被4整除并且不能被100整除))
Scanner scanner = new Scanner(System.in);
//得到年份
System.out.println("请输入年份:");
int year = scanner.nextInt();
//得到月份
System.out.println("请输入月份:");
int month = scanner.nextInt();
//判断出该月有多少天
switch(month)
System.out.println("31天");
//判断是否为闰年
if(year%400==0 || (year%4==0 && year%100 !=0))
System.out.println("29天");
System.out.println("28天");
System.out.println("30天");
(for循环的使用场景:能确定循环得次数)
题目:输入学生的人数和分数,算出这个班的平均值
题目:九九乘法表
* 正三角九九乘法表*/
public static void lx1()
for(int i=1;i&=9;i++)
for(int j=1;j&=i;j++)
//System.out.print(i+"*"+j+"\t");
System.out.printf("%d*%d=%d\t",i,j,(i*j));
System.out.println();
public static void lx2()
for(int i=9;i&=1;i--)
for(int j=1;j&=i;j++)
System.out.printf("%d*%d=%d\t",j,i,(j*i));
System.out.println();
public static void lx3()
for(int i=9;i&=1;i--)
for(int k=1;k&=(9-i);k++)
System.out.print("\t");//打印出空格
for(int j=1;j&=i;j++)
System.out.printf("%d*%d=%d\t",j,i,(j*i));
System.out.println();
public static void lx4()
for(int i=1;i&=9;i++)
for(int k=1;k&=(9-i);k++)
System.out.print("\t");//打印出空格
for(int j=1;j&=i;j++)
System.out.printf("%d*%d=%d\t",j,i,(j*i));
System.out.println();
题目:打印出如下的图形
break 和 continue的区别
break表示跳出循环,continue表示跳出本次循环从下次循环开始运算
while()循环
& while(循环成立的条件)
{
执行的代码
}
题目:给难民发放粮食(输入粮食的总量,和每个难民领的次数)计算有多少难民领取了粮食,还剩多少粮食
do while()循环
do{}while(循环成立的条件);
题目:银行卡取款(假定您卡有16000,输入你每次要提款的钱数,计算你提款的次数和卡内余额,输入零表示退出)
&&&
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,
小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少 对
//这是一个菲波拉契数列问题
分析思路:
小&&&&&& 中&&&&&& 大
1&&&&&&& 0&&&&&&& 0&&&& 1&&
0&&&&&&& 1&&&&&&& 0&&&& 1&&&
1&&&&&&& 0&&&&&&& 1&&&& 2&&&& ------3
1&&&&&&& 1&&&&&&& 1&&&& 3&&&& ------4
2&&&&&&& 1&&&&&&& 2&&&& 5&&& -------5
3&&&&&&& 2&&&&&&& 3&&&& 8&&&& ------6
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:什么叫素数呢?除了1和本身不能被任何数整除 的数叫素数
题目:打印出1到999所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。
题目:输入某年某月某日判断这一天是这一年的第几天(需要考虑闰年的情况,能被400整除或者能被4整除但不能被100整除)
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+(此时共有5个数相加),要求用户自主录入相加的数和相加的项数
题目:一个数如果恰好等于它的因子(如果一个数能够被一个不是它自身的数整除那么这个数就是它的因子)之和,这个数就称为 "完数 "。例如6=1+2+3.编程&&&& 找出1000以内的所有完数。并显示出所属因子&
题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
常用的数学函数
其中,重点强调一下 Math.random()方法,返回的是0到1 的随机小数,其值的范围是大于等于0,小于一
4、基本 数据类型的封装类(自动装箱和拆箱)
初识对象
思考一个问题
以上问题可以实现吗?
对象是具有一些行为功能的实体。对象存在于(堆中)。
类就像是设计图(类中会设计对象所具有的功能)。对象就像是按这张设计图设计出的具体的东西。对象可以提供各种各样的方法,让你操作。
类&&&& 类的变量名(对象的引用)&&&&&& 创建一个对象
例如:&& Scanner&& scan =& new Scanner(System.in)
该对象可以从控制台获得信息
封装类
在java中基本数据类型并不是对象,它们只是纯粹的数据,除了数值本身的信息以外,基本数据类型不带有其它的信息或操作方法。
而对象本身可以带更多的信息,和方法。
如果基本数据类型要是以对象存在就会用到它们的包装类:
这些包装类都可以包装对应的基本数据类型。而且还提供了相应的方法
基本数据类型存在的意义
既然java是面向对象的语言,java中又包含了很多的类。比如integer类,为什么还需要基本数据类型,比如int。例如这些类不是也可以解决问题吗?
基本数据类型是用的最频繁的类型。
而且占用存储空间小,可以把它们存入栈中,实现快速的操作。
而他们的封装类Integer等,必需创建对象实例,在堆中开辟内存,既消耗资源,又耗费时间。
装箱和拆箱
将一个基本的数据类型转换为它的包装类,这个过程叫装箱
手动装箱
2、自动拆箱(jdk1.5之后的新特性)
将一个包装类转换为它的基本的数据类型,这个过程叫拆箱
1、手动拆箱
自动拆箱(jdk1.5之后的新特性)
对==号的深入解释
首先对象存在在堆中,而变量存在在栈中对象变量中存放的是对象在堆中的内存地址。基本数据类型中存放的就是它代表的值
所以比较两个对象的值是否相等不能用==,要用equals
小心使用自动拆装箱
所以强烈建议有意识地使用手动拆装箱
Null 和 “”的解释
注意基本数据类型不能引用null
数组
什么是数组
数组(Array)本质上是一组数据的群组,每个数据会有一个索引值(index),只要指定索引值就可以取出对应的数据。(数组也是对象)
创建数组的方法
一维数组的初始值
数组的访问
牢记数组的操作,必须依靠索引值。
题目:遍历数组中的数据
//提醒:数组长度一旦定义,它的长度就不可以改变了,没有定义数组长度之前可以动态定义数组的长度
题目:输入班级人数,并把每个学生的成绩放入到数组中,并显示出来
题目:冒泡排序
题目:将末尾放到首位其它位平移
二维数组
二维数组说白了就是: 数组里边装数组
二维数组的声明方法
二维数组的遍历方法
二维数组的length属性表示行数,而且每行装的数组长度是不能一样的
再谈null值
//思考一下 arr1[1]= null为什么会错呢
//再考虑一下
题目:将数组a1,拷贝给数组a2
依靠 System. arraycopy(Object src,
&&&&&&&&&&&&&&&&&&&&&&&&&&&& int srcPos,
&&&&&&&&&&&&&&&&&&&&&&&&&&&& Object dest,
&&&&&&&&&&&&&&&&&&&&&&&&&&&& int destPos,
&&&&&&&&&&&&&&&&&&&&&&&&&&&& int length)方法进行数组的拷贝
参数:
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。
数组的工具类(java.util.Arrays)
Foreach循环
任何类型都可以创建它的数组形式
题目:将九九乘法表装装入String[][]数组中
数组练习
& 题目:找出2个已知数组中相同的值。
题目:比较两个int[] 数组是否相等(仿写Arrays.equals方法)
题目:仿写System. arraycopy(Object src, int srcPos, Object dest, int destPos, int length)方法.
题目:给定一个int[] 要求将数组中的奇数放到一个数组中,将偶数放入一个数组中并将奇,偶数组打印。
* 给定一个int[] 要求将数组中的奇数放到一个数组中,
* 将偶数放入一个数组中并将奇,偶数组打印。
public static void lx6()
int[] arr ={12,43,56,12,90,78,23,21};
//计算一下arr中有多少奇数和多少偶数
int os_num =0;
for(int num_arr : arr)
if(num_arr%2==0)
//怎么样对这两个数组进行实例化
int[] js_arr = new int[arr.length-os_num];
int[] os_arr = new int[os_num];
//目标是要将偶数放入os_arr,奇数放入js_arr
int index_os =0;
int index_js=0;
for(int i=0;i&arr.i++)
if(arr[i]%2==0)
os_arr[index_os] =arr[i];
index_os++;
js_arr[index_js] = arr[i];
index_js ++;
System.out.println("奇数是:");
for(int sj : js_arr)
System.out.print(sj+"\t");
System.out.println();
System.out.println("偶数是:");
for(int os : os_arr)
System.out.print(os+"\t");
System.out.println();
浏览: 4152 次
来自: 北京
这不是spring的IOC啊,把你具体实现类注入进去就ok了。 ...
如果你只需要使用A B中的一个的话,bean的id都是C,只需 ...
使用Spring不需要我们自己new接口C的实现类,因为Spr ...
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'java中的语法错误指什么?_百度知道
java中的语法错误指什么?
我有更好的答案
还是蛮有意思的,别人跟你说运行时错误就是语法错误,就又来问什么是语法错误了。不过他的说法是错的,语法错误是编译期错误,逻辑错误才是运行期错误。语法错误当然就是不符合语法规则出现的问题,比如说你拿两个字符串进行乘法运算,当然就不对了,就是通常所说的病句。这是它们的区别:编译错误就是程序在编译阶段,此时程序还没有运行,编译器根据语法规则进行检查会发现错误,并给出错误提示,一般是语法上的错误;运行错误就是程序在语法上没有错误,但是随着时间的推移,在程序的运行阶段发生了错误,比如数组越界了,空指针等。
采纳率:42%
违反java语法的书写错误。
为您推荐:
其他类似问题
您可能关注的内容
java的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。一:运行源代码EnumTest.java,分析运行结果。
代码如下:
public class EnumTest {
public static void main(String[] args) {
Size s=Size.SMALL;
Size t=Size.LARGE;
//s和t引用同一个对象?
System.out.println(s==t);
//是原始数据类型吗?
System.out.println(s.getClass().isPrimitive());
//从字符串中转换
Size u=Size.valueOf("SMALL");
System.out.println(s==u);
//列出它的所有值
for(Size value:Size.values()){
System.out.println(value);
enum Size{SMALL,MEDIUM,LARGE};
结果截图:
枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中。而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义相似。不过相比较常量类型,枚举类型可以为申明的变量提供更大的取值范围。
二:原码,反码,补码的区别辨析
原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值,
正数的反码是其本身负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
补码的表示方法是:正数的补码就是其本身负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)示例程序:
public class qq {
* @param args
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(0xffffffff);
&得到结果为-1
java中数据使用的是反码表示的。
&三:通过原始类型的包装类完成类型转换
public class qq {
public static void main(String args[]) {
System.out.println("0.05 + 0.01 = " + (0.05 + 0.01));
System.out.println("1.0 - 0.42 = " + (1.0 - 0.42));
System.out.println("4.015 * 100 = " + (4.015 * 100));
System.out.println("123.3 / 100 = " + (123.3 / 100));
四:Java变量遵循“同名变量的屏蔽原则”
Java变量是有作用域的。如果两个作用域完全不同的变量同名,不会引起冲突。举一个简单的例子:一班有一个学生叫,二班也有一个学生叫,在一班和二班分开上课的时候,点名就不会有冲突。验证代码:
public class qq {
* @param args
private static int code=12;
public static void main(String[] args) {
// TODO Auto-generated method stub
int code=-10;
System.out.println(code);
&结果截图:
五:为什么double类型的数值进行运算得不到“数学上精确”的结果?
这个涉及到二进制与十进制的转换问题。N进制可以理解为:数值×基数的幂,例如我们熟悉的十进制数123.4=1×10?+2×10+3×(10的0次幂)+4×(10的-1次幂);其它进制的也是同理,例如二进制数11.01=1×2+1×(2的0次幂)+0+1×(2的-2次幂)=十进制的3.25。double类型的数值占用64bit,即64个二进制数,除去最高位表示正负符号的位,在最低位上一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。六:java中输出格式源代码如下:
public class qq {
* @param args
public static void main(String[] args) {
// TODO Auto-generated method stub
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
&结果截图:
因为+X+Y表示只是输出X和Y的值,X+Y表示输出X+Y的值。
阅读(...) 评论()Java基本语法_百度文库
赠送免券下载特权
10W篇文档免费专享
部分付费文档8折起
每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Java基本语法
&&Java基本语法
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩44页未读,
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 java 语法糖 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信