java 入门 一 基本语法

首语:我们从基本的语法,数据类型,控制流程,结构化编程初识 Java...

Markdown语法说明

一.基本语法:


javadoc:它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。

打开Eclipse,点击标题栏project->Generation.


二.数据类型:


1.8种基本类型

一、4种整型

byte      1字节          -128——127

short    2 字节        -32,768 —— 32,767

int      4 字节          -2,147,483,648 ——2,147,483,647(超过20亿)

long      8 字节  -9,223,372,036,854,775,808——9,223,372,036854,775,807

注释:java中所有的数据类所占据的字节数量与平台无关,java也没有任何无符号类型

二、 2种浮点类型

float    4 字节        32位IEEE 754单精度(有效位数 6 – 7位)

double  8 字节        64位IEEE 754双精度(有效位数15位)

三、1种Unicode编码的字符单元

char    2 字节          整个Unicode字符集

四、1种真值类型

boolean    1 位            True或者false

2.数据类型的转换

分为以下几种情况:

1)低级到高级的自动类型转换;

2)高级到低级的强制类型转换(会导致溢出或丢失精度);

3)基本数据类型的算法;

4)基本类型向类类型转换;

5)基本类型向字符串的转换;

6)类类型向字符串转换;

1.自动转换规则

boolean类型与所有其他7种类型都不能进行转换。其他7种都可自行转化,但是会出现精度损失。

byte <(short=char)< int < long < float < double

1.在一个双操作数以及位运算等算术运算式中,会根据操作数的类型将低级的数据类型自动转换为高级的数据类型,分为以下几种情况:

1)只要两个操作数中有一个是double.float类型的,另一个将会被转换成double.float类型,并且结果也是double类型;---->int a = 1;double b = 5;b = a;  //b = 1.0

2)只要两个操作数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型;

---->int a = 1;long b = 5;b = a;  // b = 1

3)两个操作数(包括byte、short、int、char)都将会被s转换成int类型,并且结果也是int类型。

2.强制类型转换规则:

需要在来在低级前说明,要转化的类型。强值类型转换会出现数据溢出。

----->float a = 1;int b = 5;b = (int) a; //a=1

3.基本数据类型的算法:

long sum = longnum + bytnum;(加减乘除 他们的和是长的数据类型);

包装数据类型与基本数据类型之间的转换

简单类型的变量转换为相应的包装类,可以利用包装类的构造函数。即:Boolean(boolean value)、Character(char value)、Integer(int value)、Long(long value)、Float(float value)、Double(double value)。

4.基本类型向类类型转换:

正向转换:通过类包装器来new出一个新的类类型的变量

Integer a= new Integer(2);

反向转换:通过类包装器来转换

int b=a.intValue();


通过类包装器——>基本数据类型

eg1:int i=Integer.parseInt(“123”)

说明:此方法只能适用于字符串转化成整型变量

eg2: float f=Float.valueOf(“123”).floatValue()

说明:上例是将一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值。

eg3: boolean b=Boolean.valueOf(“123”).booleanValue()

说明:上例是将一个字符串转化成一个Boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的boolean数值。

eg4:double d=Double.valueOf(“123”).doubleValue()

说明:上例是将一个字符串转化成一个Double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值。

eg5: long l=Long.valueOf(“123”).longValue()

说明:上例是将一个字符串转化成一个Long对象,然后再调用这个对象的longValue()方法返回其对应的long数值。

eg6: char=Character.valueOf(“123”).charValue()

说明:上例是将一个字符串转化成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值。


5.基本类型向字符串的转换:(生成对应的数据类类型,调用包装类)

基本类型向字符串转;

int i1 = 10;     double d1 = 3.1415926;

Integer I1 = new Integer(i1);// 生成Integer类

String si1 = I1.toString();// 分别调用包装类的toString() 方法转换为字符串

System.out.println("si1" +si1);//si110


int a = 1234;

String String = "" + a;

System.out.println(""+2+3);// “""”把2转成字符串操作;

System.out.println(2+3);//不存在转换。

System.out.println(2+3+"");//前两个数值相加后,被“""”转成字符串。

System.out.println(2+""+3);//同第一个。

输出显示为:23,5,5,23

字符串转基本数据类型;

String MyNumber ="1234";

int MyInt = Integer.parseInt(MyNumber);

int sum = MyInt*3;

System.out.println(sum);//3702

6.类类型向字符串转换:

正向转换:因为每个类都是object类的子类,而所有的object类都有一个toString()函数,所以通过toString()函数来转换即可

反向转换:通过类包装器new出一个新的类类型的变量

eg1: int i=Integer.valueOf(“123”).intValue();

三.控制流程:

1.循环语句(whlie):累加的作用。

while(循环条件){

循环体;}

语法说明:和if 语句类似,如果不是用代码块的结构,则只有while后面的第一个语句是循环体语句。在该语法中,要求循环条件的类型为boolean类型,指循环成立的条件,循环体部分则是需要重复执行的代码。

int i = 0;

while(i < 10){

System.out.println(i); //输出变量的值

i++; //变量的值增加1

}// 变量条件不增循环往复。在控制台下执行死循环的程序,可以按Ctrl+C 结束循环,在Eclipse 中运行死循环的程序,可以选择执行窗口中的红色按钮“Terminate”结束程序。

int i = 1; //循环变量

int sum = 0; //数字和

while(i <= 10){

sum += i; //和当前的i 值相加

i++; //变量i 增加1

}//第一次循环是把和1 相加的结果赋值给sum,然后再使用sum 的值和2 相加再赋值给sum,依次类推,则得到1-10 之间所有变量的和。

int i = 0;

while(i < 10){

i++; //变量的值增加1

System.out.println(i); //输出变量的值

}

1.循环(do-while):

do-while是典型的 "先循环再判断" 的流程控制结构

do{

循环体;

}while(循环条件);

语法说明:在do-while 语句中,循环体部分是重复执行的代码部分,循环条件指循环成立的条件,要求循环条件是boolean 类型,值为true 时循环执行,否则循环结束,最后整个语句以分号结束。

int i = 0;

do{

System.out.println(i); //输出变量的值

i++; //变量增加1

}while(i < 10);

1.循环(for):

for(初始化语句;循环条件;迭代语句){

循环体;

}

1、和其它流程控制语句一样,语句中的大括号不是语法必须的,但是为了结构清楚以及在循环体部分可以书写多行代码,一般使用大括号。

2、初始化语句作用是在循环开始以前执行,一般书写变量初始化的代码,例如循环变量的声明、赋值等。该语句可以为空。

3、循环条件是循环成立的条件,要求必须为boolean 类型,如果该条件为空,则默认为true,即条件成立。循环条件为空时,默认为true,但是会死循环;

4、迭代语句是指循环变量变化的语句,一般书写i++、i—这样的结构,当然,该语句也可以为空

5、循环体指循环重复执行的功能代码。

2.分支/条件(if):

int a = 10;

if(a >= 0)

System.out.println(“a 是正数”);

if( a % 2 == 0)

System.out. println(“a 是偶数”);

2.条件分支语句(if-else):

if(判断语句){

   true, 执行语句1;

}else {

    false,执行语句2;

}

语法说明:其中前面的部分和if 语句一样,else 部分后面是功能的代码,按照该语法格式,功能代码只能有一句。

执行顺序:如果条件成立,则执行if 语句中的执行语句1,否则执行else 中的执行语句2。

int n = 12;

if(n % 2 != 0)

System.out.println(“n 是奇数”);

else

System.out.println(“n 不是奇数”);

2.条件分支语句(if-else else-if):

if (判1){

true, 执行语句1;

}else if (判2) {

false,执行语句2;

}else{

false 执行语句3;

} ///在执行时注意,可以统计你需要记录的false和true的数量,倘若除了某总情况其他都是true可以不需要用这种方法。

2.条件分支语句(switch):

switch 语句在条件语句中特别适合做一组变量相等的判断,在结构上比if 语句要清晰很多。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,978评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,954评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,623评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,324评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,390评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,741评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,892评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,655评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,104评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,451评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,569评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,254评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,834评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,725评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,950评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,260评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,446评论 2 348

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,597评论 18 399
  • Java经典问题算法大全 /*【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子...
    赵宇_阿特奇阅读 1,850评论 0 2
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile丽语阅读 3,828评论 0 6
  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 1,589评论 4 12
  • 《必然》,告诉我们未来三十年科技发展的12大必然趋势。
    VitorMiao阅读 621评论 0 0