我是靠谱客的博主 活力冬日,最近开发中收集的这篇文章主要介绍JAVA语法(10.24更新),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

- Scanner类

import java.util.Scanner;
public
class z108{
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
double sum=0;
int cnt=0;
while(scan.hasNextDouble()){
double x=scan.nextDouble();
cnt++;
sum+=x;
System.out.println("sum "+sum+" average "+sum/cnt);
}
//输入end结束输入
scan.close();//结束读入
}
}

- 类

package helloworld;
//重载 该情况下不会报错
public class helloworld {
public static void main(String[] args) {
getSum(1, 2);
getSum(1.5, 2.5);
getSum(5, 5.5);
}
public static void getSum(int num1, int num2) {
System.out.println("getsum-int "+(num1 + num2));//加括号不会变成字符串
}
public static void getSum(double num1, double num2) {
System.out.println("getsum-double "+(num1 + num2));
}
public static void getSum(double num1, int num2) {
System.out.println("getsum-double-int "+(num1 + num2));
}
}
package helloworld;
//重载 该情况下报错
//getSum(1, 2) 可以同时匹配两个方法,任何一个方法都不比另一个方法更匹配,因此为歧义调用,导致编译错误。
public class helloworld {
public static void main(String[] args) {
getSum(1, 2);
getSum(1.5, 2.5);
getSum(5, 5.5);
}
public static void getSum(int num1, double num2) {
System.out.println("getsum-int-double "+(num1 + num2));
}
public static void getSum(double num1, int num2) {
System.out.println("getsum-double-int "+(num1 + num2));
}
}

class Sq{
public int side;
public Sq() {
this(1);
System.out.println(this.side);//1
}
public Sq(int side){
this.side=3;
System.out.println(side);//3
}
}
public class Main {
public static void main(String[] args) {
new Sq();
}
}

关键字 this 不可以在静态方法中使用。关键字 this 代表的是对象的引用,而静态方法不依赖于类的具体对象。

- 数据域封装


class Square{
private int side;
public Square() {
this(1);
System.out.println(this.side);//1
}
public Square(int side){
this.side=3;
System.out.println(side);//3
}
public int getSide(){
return this.side;
}
}
public class Main {
public static void main(String[] args) {
Square s1=new Square();
System.out.println("test3 "+s1.getSide());
}
}

- 字符串

StringBuilder 的方法没有使用关键词 synchronized 修饰。由于 StringBuffer 对方法加了同步锁,因此其效率略低于 StringBuilder,但是在多线程的环境下,StringBuilder 不能保证线程安全,因此 StringBuffer 是更优的选择。

- Number类

public class Main {
public static void main(String[] args) {
//Java isLetter() 方法
//isLetter() 方法用于判断指定字符是否为字母。
System.out.println(Character.isLetter('c'));
System.out.println(Character.isLetter('5'));
System.out.println(Math.PI);
System.out.println(String.format("%.2f", Math.PI));
Integer x0 =23;//不能写成int
Integer是int的包装类,int则是java的一种基本数据类型
System.out.println(x0.compareTo(3));//1
System.out.println(x0.compareTo(33));//-1
System.out.println(x0.compareTo(23));//0
String s0="80";
Integer x1=Integer.valueOf(s0);
System.out.println(x1);//80
int x=5;
}
}

- Integer和int

Integer是int的包装类,int则是java的一种基本数据类型
Integer变量必须实例化后才能使用,而int变量不需要
Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值
Integer的默认值是null,int的默认值是0

- 四舍五入

public class Main {
public static void main(String[] args) {
double[] nums={1.1, 2.3, 4.7, -1.1, -1.8};
for(double val:nums) {
test(val);
}
}
public static void test(double x){
System.out.println(Math.floor(x));
System.out.println(Math.round(x));
System.out.println(Math.ceil(x));
//1 1 2
2 2 3
4 5 5
-2 -1 -1
-2 -2 -1
}
}

- isDigit() 方法用于判断指定字符是否为数字


public class Main {
public static void main(String[] args) {
char x=97;
int x2=9;
System.out.println(x);
System.out.println(Character.isDigit(x));
System.out.println(Character.isDigit(x2));
System.out.println(Character.isDigit('c'));
//a
//false
//false
//false
}
}
  • String类
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
StringBuilder s0=new StringBuilder(22);
s0.append("my test..");
System.out.println(s0);
s0.append("p");
System.out.println(s0);
s0.insert(2,"java is great");
System.out.println(s0);
s0.delete(5,12);
System.out.println(s0);
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
StringBuffer s0=new StringBuffer("fgfgrfg");
System.out.println(s0);
StringBuffer s1=new StringBuffer("dfe");
//	indexOf(String str, int fromIndex)
//	从指定的索引处开始,返回指定子字符串第一次出现的字符串中的索引。
//indexOf() 方法对大小写敏感!
System.out.println(s0.indexOf("f",2));//2
System.out.println(s0.indexOf("f",3));//5
System.out.println(s0.indexOf("g",7));//-1
//第三次出现
System.out.println(s0.indexOf("g",s0.indexOf("g")+2));//3
}
}

- String转为StringBuffer

public class Main {
public static void main(String[] args) {
int x=67;
String s0=String.valueOf(x);
StringBuffer s1=new StringBuffer(s0);
s1.reverse();
System.out.println(s1);
}
}

toString

用法1.若希望将StringBuffer在屏幕上显示出来, 则必须首先调用toString方法把它变成字符串常量,因为PrintStream的方法println()不接受StringBuffer类型的参数.

用法2.toString() 方法用于返回一个表示指定 char 值的 String 对象。结果是长度为 1 的字符串,仅由指定的 char 组成。

public class Test {
public static void main(String args[]) {
System.out.println(Character.toString('a'));
System.out.println(Character.toString('A'));
}
}

创造不规则二维数组

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
double[][]arr1=new double[2][3];
int[][]arr2=new int[3][];
arr2[0]=new int[2];
arr2[1]=new int[1];
arr2[2]=new int[3];
arr2[0][0]=1;
arr2[0][1]=2;
arr2[1][0]=3;
arr2[2][2]=11;
arr2[2][1]=21;
arr2[2][2]=123;
for(int i=0;i<arr2.length;i++){
for(int j=0;j<arr2[i].length;j++){
System.out.println(arr2[i][j]);
}
System.out.println("another line");
}
}
}

Arrays 类

import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
double[]arr1=new double[2];
Arrays.fill(arr1,1);
for(double val:arr1){
System.out.println(val);//1
}
}
}
import java.util.Arrays;
import java.util.Scanner;
public class Main {
static void doit(double[]args){
double[] A=args;
A[0]=99;
}
public static void main(String[] args) {
double []arr1=new double[2];
Arrays.fill(arr1,1);
doit(arr1);
for(double val:arr1){
System.out.println(val);//99 1.0
}
}
}

Data类

https://www.runoob.com/java/java-date-time.html

import java.util.Arrays;
import java.util.Scanner;
import java.util.Date;
public class Main {
public static void main(String[] args) {
Date t1=new Date();
System.out.println(t1.toString());
}
}

系统休眠(必须加上try catch)

import java.util.*;
public class Main {
public static void main(String[] args) {
try {
System.out.println(new Date());
Thread.sleep(1000 * 5);
System.out.println(new Date());
}
catch (Exception e){
System.out.println(1);
}
}
}

最后

以上就是活力冬日为你收集整理的JAVA语法(10.24更新)的全部内容,希望文章能够帮你解决JAVA语法(10.24更新)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部