JAVA的基础学习第一部分
JAVA的基础学习
public class Helloworld{
public static void main(String[] args){
System.out.println("Hello,world!");
}
}
标识符和关键字
- 标识符由大小写字母、下划线_、$构成
- 不可与关键字同名
- 标识符大小敏感
数据类型
a.整数类型:byte、short、int、long
1.数值类型:b.浮点类型:float、double
c.字符类型:char
基本类型:
2.布尔类型:boolem
int a=10;
byte b=20;
short c=30;
long d=30L;//long型需加上L
float e=5.1F;//float型需加上F
double f=3.14;
char name='A';//char型只能定义一个字符
String lastName=wuFan;//String可以定义字符串
boolean one=false;//只有对错
boolean two=true;
整数的扩展
int i=10;
int j=010;//八进制,前加0
int k=0x10;//十六进制,前加0x
转义字符
\t 制表符
\n 换行
类型转换
强制类型转换:高>低
自动类型转换:低>高
数据类型等级高低排序:(由低到高)
byte->short->char->int->long->float->double
//示例
int i=128;
byte b=(byte)i;//同时需注意溢出问题
溢出问题
int money=10_0000_0000;//数字之间可以用下划线分割
int years=20;
int total1=money*years;//发生溢出
long total2=money*years;//同样溢出,因为先用int型计算,再转换为long型
long total3=(long)money*years;//其中一个数强制转换为long型即可
变量
类变量、实例变量、局部变量
public class wuFan{
static double salary=2500;//类变量,在实例变量前加static
int age;//实例变量,在方法与类之间,可以不初始化
String name;//实例变量(除基本类外,默认null,布尔默认false)
public static void mai(String[] args){
int a=10;//局部变量,在方法内,必须声明和初始化
System.out.println(a);
wuFan wufan=new wuFan();
System.out.println(wufan.age);
System.out.println(wufan.name);
}
}
常量
初始化后不能改动
final 常量名=值;
final double PI=3.14;//常量名一般大写
变量命名规范
-
类成员变量:首字母小写和驼峰原则(除第一单词外,后面单词首字母大写)
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母与下划线
-
方法名:首字母小写与驼峰原则
-
类名:首字母大写与驼峰原则
运算符
/ 除去取整
% 除去取余
?:条件运算
int grade=75;
grade>60?"及格":"不及格";
double pow=Math.pow(2,3);//幂运算2的3次方
位运算
A=0011 1100
B=0000 1101
A&B=0000 1100
A|B=0011 1101
A^B=0011 0001 (异或)
~B=1111 0010
左移<< *2
右移>> /2
字符串连接符
int a=10;
int b=20;
System.out.println(" "+a+b);//输出1020
System.out.println(+a+b+" ");//输出30
三元运算符
x?y:z 如果x==true,则结果为y,否则结果为z;
包机制
import com.kuang.bate;//导入包
import com.kuang.bate.*;//导入改包所有内容
Scanner 对象
Scanner s=new Scanner(System.in);//注意,需要导入关于Scanner的包
//next() 不能得到带有空格的字符串
//nextLine() 以Enter作为结束符,可以获得空格
//基于Next方式接收键盘输入数据,无法接收带有空格数据
package com;
import java.util.Scanner;//导入Scanner相关包
public class Demo2{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("使用Next方式接收");
if(scanner.hasNext()){
String s=scanner.next();
System.out.println("输出的内容:"+s);
}
scanner.close();//释放资源
}
}
//使用NextLine方式接收键盘输入,可以得到带有空格字符串
package com;
import java.util.Scanner;
public class Demo3{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("以NextLine方式接收");
System.out.println("请输入字符串");
if(scanner.hasNextLine()){
String s=scanner.nextLine();
System.out.println("输出内容为:"+s);
}
scanner.close();
}
}
//省去if的Scanner实现方法
package com;
import java.util.Scanner;
public class Demo4{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("请输出字符串");
String s=scanner.nextLine();
System.out.println("输出的内容为:"+s);
scanner.close();
}
}
浮点输入
package com;
import java.util.Scanner;
public class Demo5{
public static void main(String[] args){
Scanner scanner=new Scanner(String.in);
int i=0;
float f=0.0f;
System.out.println("请输入整数或小数");
if(scanner.hasNextInt()){
i=scanner.nextInt();
System.out.println("整数数据:"+i);
}
else if(scanner.hasNextFloat()){
f=scanner.nextFloat();
System.out.println("输入数据:"+f);
}
else{
System.out.println("非合法输入");
}
scanner.close();
}
}
/*练习:可以输入多个数据,并求其总和及平均数,每输入一个数字,
用回车键确认,通过输入非数字来结束并得出结果*/
package com;
import java.util.Scanner;
public class Demo6{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("请输入数字,再输入非数字以结束");
double sum=0;
int m=0;
while(scanner.hasNextDouble(){
double x=scanner.nextDouble();
m++;
sum+=x;
System.out.println("已输入"+m+"个数,结果sum="+sum);
}
System.out.println("共输入"+m+"个数据,和为sum="+sum+",平均值为"+sum/m);
scanner.close();
}
}
if结构
package com;
import java.util.Scanner;
public class Demo7{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.println("输入你的成绩以评级");
int grade=scanner.nextIouble();
if(grade>=90){
System.out.println("成绩:"+grade+"\t"+"优秀");
}
else if(grade>=80){
System.out.println("成绩:"+grade+"\t"+"良好");
}
else if(grade>=60){
System.out.println("成绩:"+grade+"\t"+"及格");
}
else{
System.out.println("成绩:"+grade+"\t"+"不及格");
}
scanner.close;
}
}
switch结构
package com;
public class Demo8{
public static void main(String[] args){
char grade=scanner.nextChar();
switch(grade){
case 'A':
System.out.println("成绩等级:"+grade+"\t"+"优秀");
break;
case 'B':
System.out.println("成绩等级:"+grade+"\t"+"良好");
break;
case 'C':
System.out.println("成绩等级:"+grade+"\t"+"及格");
break;
case 'D':
System.out.println("成绩等级:"+grade+"\t"+"不及格");
break;
default:
System.out.println("未知等级");
}
}
}
for循环
package com;//练习1:计算0到100之间的奇数和偶数之和
public class DemoFor1{
public static void main(String[] args){
int odd=0;
int even=0;
for(int i=0;i<=100;i++){
if(i%2!=0){
odd+=i;
}
else{
even+=i;
}
System.out.println("0-100间奇数和为:"+odd);
System.out.println("0-100间偶数和为:"+even);
}
}
package com;//练习2:用while或for循环输出1-100之间能被5整除的数,并且每行输出3个
public class DemoFor2{
public static void main(String[] args){
for(int i=0;i<=100;i++){
if(i%5==0){
System.out.println(i+"\t");
if(i%(5*3)==0){
System.out.println();
}
}
}
}
}
package com;//练习3:打印九九乘法表
public class DemoFor3{
public static void main(String[] args){
for(int i=1;i<10;i++){
for(int j=1;j<=i;j++){
System.out.print(i+"x"+j+"="+i*j+"\t");
}
System.out.println();
}
}
}
package com;//增强for循环
public class DemoFor4{
public static void main(String[] args){
int[] numbers={10,20,30,40};//定义数组
for(int i=0;i<4;i++){
System.out.println(numbers[i]);
}
System.out.println("================");//分割线
//增强for循环
for(int x:numbers){
System.out.println(x);
}
}
}
//知识点
System.out.prontln();输出结束后会自动换行,输出空即换行
System.out.print();输出结束后不自动换行
System.out.print("\n");
标签
//break、continue、goto
//break 直接跳出循环体
//continue 退出这级循环,并未退出循环体
//标签
package com;
public class Demo11{
public static void main(String[] args){
int count=0;
outer:for(int i=10;i<150;i++){
for(int j=2;j<i/2;j++){
continue outer;
}
}
System.out.println(i+"_");
}
}
//打印三角形 五行
/*
*
***
*****
*******
*********
*/
package com.Wufan.base;
public class Demo9{
public static void main(String[] args){
for(int i=1;i<=5;i++){
for(int j=1;j<=5;j++){
if(j<=5-i){
System.out.print(" ");
}else{
System.out.print("*");
}
}
for(int k=5;k<5+i;k++){
if(k==5){
continue;
}
System.out.print("*");
}
System.out.println();
}
}
}