首页 > 编程语言 > 详细

java基础

时间:2021-08-05 16:03:26      阅读:16      评论:0      收藏:0      [点我收藏+]

第一个Java程序

helloWorld

java文件后缀为.java 编译后文件后缀为.class

public class a{
   public static void main(String[] args){
       System.out.println("Hello World");
      //public 访问修饰符 代表该类是一个公开类
       //static 静态 代表main函数是一个静态函数优先被加载
       //void 代表main函数没有返回值
       //main函数程序的入口函数,一个类只能有一个,不可在函数中定义函数
       //String[] args 代表为main函数传递一个字符串数组参数 参数名args
       //System 代表一个类 该类用final修饰不可被继承
       /*out 代表一个属性 final static PrintStream out
       该属性final修饰,只能赋值一次*/
       //println() printStream对象中的一个方法该方法有多种重载可以输出对象和字符串等等
  }
}

编译运行

javac - . a.java java a

注意:

  1. 文件名和类名相同

  2. 尽量用中文

  3.  

Java语言特点

  1. 编译型 -->c c++

  2. 解释性 --> 网页 javaScript python

  3. 先解释后编译 -->java

IDE

IDE:集成开发环境 简化开发

idea官网:https://www.jetbrains.com/

java基础语法

1、注释、标识符、关键字

#### 注释

当代码很多时注释很重要

注释并不会被执行,是写给写代码的人看的

  1. 单行注释://注释内容

  2. 多行注释:/*注释

内容*/

  1. 文档注释 /**

    */

例如:

//1.单行注释
?
/*2.多行注释
idea中快捷键ctrl+shift+/
*/
?
/**
*3.文档注释
*/

关键字

变量名只能以字母下划线和$开头

String adc="王";
String _adc="王";
String $adc="王";
//以上正确
String 1adc="王";//错误
String #adc="王";//错误
//中文也可以但是不建议
String 王者荣耀="最强王者"; //正确

数据类型

八种基本类型: byte 1个字节 -127 -128 默认值 0 short 2个字节 -32767-32768 默认值 0 整数 int 4个字节 默认值 0 long 8个字节 默认值 0 数值型 小数 float 4个字节 默认值 0.0 double 8个字节 默认值 0.0 字符型 char 2个字节 默认值 空 布尔 Boolean 1个位 默认值 false 引用类型 String 默认值 null 引用类型 类、接口、数组 整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x 010 0x10 浮点数拓展: //float //double

float d1=235464648646;
float d2=d1+1;
System.out.println(d1==d2);//true
//精度消失

所以不能用浮点数进行比较

字符拓展:所有的字符本质还是数字 ASCLL码

转义字符: \t 制表符 \n 换行 等等等

Boolean值拓展:

boolean flag=true;
if(flag==true){}//新手
if(flag){} //老手
//两种用法相同

类型转换

类型转换

自动转换: 从小到大 从整数到小数

强制转换:从高类型转换到低类型 容易失去精度(内存溢出)

注意点:

  1. 不能对布尔值进行转换

  2. 不能把对象类型转换为不相干的类型

  3. 把高容量转换为低容量类型的时候,强制转换

  4. 转换的时候可能存在内存溢出,或者精度问题

int a=128;
byte b=(byte)a;
System.out.println(b);//-128 内存溢出

jdk 1.7 之后数字之间可以用_分割

int a=1_000;
System.out.println(a);//1000

变量

存放在内存中

  1. 变量的定义

    先声明后赋值

    int a;
    a=10;

    声明并赋值

    int a=10;
    1. 变量的分类

      局部变量:方法以内,仅限于本方法使用

      成员变量:类以内方法以外

常量

定义:特殊的变量,定义常量需要用final关键字

定义一个常量:

final double SALARY=1000D;

命名规范

要求所有命名要见名知意

常量: 全大写

类名:首单词字母大写单词拼接时其他单词首字母大写

变量:首单词字母小写单词拼接时其他单词首字母大写

数学运算

借用java自带的工具类Math

方法名作用
Math.abs(-5); 取绝对值
Math.pwd(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

<< 左移一位乘于二 >> 右移一位除以二

面试题:任何数和字符串相加都为字符串

int a=10;
int b=20;
System.out.println(" "+a+b);//1020
System.out.println(a+b+" ");//30
//第一个为先与字符串拼接成为字符串
//第二个先运算再与字符串拼接成字符串

三元运算符

Boolean表达式?a:b boolean为真结果为a否则为假

包机制

Java中为了更好的组织类提供了包机制类似于文件夹(命名采用域名倒置)

例:www.baidu.com --> com.baidu.www

javaDoc

/**
*@author   作者名
*@version 版本号
*@since   指明最早使用的jdk版本
*@param   参数名
*@return   返回值情况
*@throws   异常抛出情况
*/

使用javaDoc注释后可以使用命令行生成对应Api

命令:

javadoc -encoding UTF-8 -charset UTF8 doc.java

在.Java文件路径使用cmd

 

 

 

 

 

Scanner

Scanner s=new Scanner(System.in);
//Scanner java众多的工具类在java的util包中
//System.in 指代System最终类中的in属性指代输入流InputStream所以需要关流

 

Scanner中的方法含义
Scanner.next(); 接收字符串
Scanner.nextInt(); 接收整数
Scanner.nextByte(); 接收整数
Scanner.nextDouble(); 接收小数
Scanner.nextFloat(); 接收小数
Scanner.nextShort(); 接收整数
Scanner.nextLong(); 接收整数
Scanner.nextChar(); 接收字符
Scanner.nextBoolean(); 接收布尔类型
Scanner.hasNext(); 判断下面是否还有字符串(类型)空格结束
Scanner.hasNextline(); 判断下面是否还有字符串(类型)回车结束

循环

if循环

if(boolean){
   
}

if-else循环

if(boolean){
   
}else{
   
}

while循环

while(boolean){
   
}

switche-case 选择分支

switch(任意类型){
       case 任意类型:业务代码; break;
       case 任意类型:业务代码; break;
       case 任意类型:业务代码; break;
       case 任意类型:业务代码; break;
       case 任意类型:业务代码; break;      
       case 任意类型:业务代码; break;
       case 任意类型:业务代码; break;
       default:任意类型:业务代码;
}

不加break,程序回从符合条件的选项开始执行直到程序结束。

三种循环结构

while循环

while(boolean){
   
}

do...while循环

do{
   
}while(boolean);

 

for循环

for(int i=0;i<100;i++){
   
}

 

java基础

原文:https://www.cnblogs.com/WangJingjun/p/15102737.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!