Java 数组 字符 函数
一、

1、

package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] numbers=new int[100];//数组
double sum=0;
for(int i=0;i<5;i++)//输入5个数
{
int x=in.nextInt();
numbers[i]=x;
sum+=x;
}
double aveg=sum/5;
System.out.println("平均值为:"+aveg);
System.out.println("大于平均值的数为:");
for(int i=0;i<5;i++)
{
if(numbers[i]>aveg)
{
System.out.println(numbers[i]);
}
in.close();//关闭扫描器
}
}
}

2、遍历
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] numbers= {1,2,3,4,4,6};//数组。直接初始化赋值
System.out.println("数组长度:"+numbers.length);
for(int i=0;i<numbers.length;i++)
{
System.out.print(numbers[i]+" "); //区别println 和print区别,一个是输出换行,一个不换行
}
}
}

二、
1、

package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] a1= {1,2,3,4,5,6};//数组
int[] a2=a1;//将a1和a2共同指向一个数组
for(int i=0;i<a1.length;i++)
{
a1[i]++;
}
for(int i=0;i<a2.length;i++)
{
System.out.print(a2[i]+" ");
}
}
}


可以看到a1和a2其实是指向了共同的地址,所以a1变化后,a2数组也跟着变。
2、
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] a1= {1,2,3,4,5,6};//数组
int[] a2= {1,2,3,4,5,6};
int[] a3=a1;
System.out.println("a1==a2? "+(a1==a2));
System.out.println("a1==a3? "+(a1==a3));
}
}

可以看到。a1和a2虽然值一样,但是存储位置是不同的,所以,第一个是false
而a1和a3指向了同一个位置,所以第二行是true。
从上面可以看到不能简单的只是==来判断是否元素相同,需要遍历才可以
3、

要想得到一样的数值,但是位置不一样,只能是遍历才可以。
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] a1= {1,2,3,4,5,6};//初始化赋值数组
int[] a2=new int[a1.length];//new 生成一个新位置数组
for(int i=0;i<a2.length;i++) //遍历复制
{
a2[i]=a1[i];
}
boolean IsEqu=true;//假定各个元素是相等
for(int i=0;i<a2.length;i++)
{
if(a1[i]!=a2[i])
{
IsEqu=false;//只要出现不相等,就 false
break;
}
}
System.out.println("a1==a2? "+IsEqu);
}
}

三、
1、统计数字出现的个数
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);//创建扫描器
int[] Num=new int[10];
int x;
x=in.nextInt();
while(x!=0)
{
if(x>=0 && x<=9)
{
Num[x]++;
}
x=in.nextInt();
}
for(int i=0;i<10;i++)
{
System.out.println(i+": "+Num[i]);
}
in.close();
}
}

2、新的遍历方式
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] num= {1,2,3,4,5};
for(int k:num)
{
System.out.println(k);
}
}
}

3、二维数组
package Hello;
import java.util.Scanner;
public class hello_test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int[][] num=new int[2][3];
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
num[i][j]=in.nextInt();
}
}
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
System.out.print(num[i][j]+" ");
}
System.out.println();
}
in.close();
}
}

4、

package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int[][] num=new int[3][3];
for(int i=0;i<2;i++)//输入
{
for(int j=0;j<3;j++)
{
num[i][j]=(int) Maht.round(Math.random());//随机生成
}
}
for(int i=0;i<3;i++)//读取
{
for(int j=0;j<3;j++)
{
System.out.print(num[i][j]+" ");
}
System.out.println();
}
int flag0=0;//判断标志位
int flagx=0;
for(int i=0;i<3;i++)//判断行是否一致
{
if(num[i][0]==0 && num[i][1]==0 && num[i][2]==0)
{
flag0=1;
}
else if(num[i][0]==1 && num[i][1]==1 && num[i][2]==1)
{
flagx=1;
}
}
for(int i=0;i<3;i++)//判断列是否一致
{
if(num[0][i]==0 && num[1][i]==0 && num[2][i]==0)
{
flag0=1;
}
else if(num[0][i]==1 && num[1][i]==1 && num[2][i]==1)
{
flagx=1;
}
}
if(num[0][0]==0 && num[1][1]==0 && num[2][2]==0)//正对角线
{
flag0=1;
}
else if(num[0][0]==1 && num[1][1]==1 && num[2][2]==1)
{
flagx=1;
}
if(num[0][2]==0 && num[1][1]==0 && num[2][0]==0)//斜对角线
{
flag0=1;
}
else if(num[0][2]==1 && num[1][1]==1 && num[2][0]==1)
{
flagx=1;
}
if(flag0==1 && flagx==0)
{
System.out.println("O win");
}
else if(flag0==0 && flagx==1)
{
System.out.println("X win");
}
else
{
System.out.println("平局");
}
in.close();
}
}


四、字符 (单引号)
1、

package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
char a='A';
System.out.println(a);
System.out.println((int)a);
char b='\u0041';//unicode编码,16进制 1+4*16=65
System.out.println(b);
System.out.println(b+1);//编码对应的值加1
b++;
System.out.println(b);
char c='王';
System.out.println(c);
System.out.println(c+1);
c++;
System.out.println(c);//Unicode表中王的下一个字
in.close();
}
}

2、
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
char a='A';
char b='a';
System.out.println(a-b);//a比A位置编号大32
char c='b';
System.out.println((char)(c-32));
in.close();
}
}

五、


package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
System.out.println(Character.isDigit('1'));//是不是数字
System.out.println(Character.isLetterOrDigit(' '));//是不是数字或者字母
System.out.println(Character.toUpperCase('a'));//小写换大写
in.close();
}
}

六、
Math类
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
System.out.println(Math.random());//随机数
System.out.println(Math.abs(-12));//绝对值
System.out.println(Math.round(2.3));//四舍五入
System.out.println(Math.round(2.6));
System.out.println(Math.pow(2,3));//乘方
in.close();
}
}

*************************************************************************************************************
六、字符串(双引号)

1、
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String s=new String("hello");
System.out.println(s+" world");
String a;
a=in.nextLine();//得到一整行
System.out.println(a);
a=in.next();//得到一行第一个空格前的内容
System.out.println(a);
in.close();
}
}

2、
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String a;
a=in.nextLine();
System.out.println(a);
System.out.println(a=="bye");//两个字符串位置比较,是不是同一个东西
System.out.println(a.equals("bye"));//两个字符串内容比较
in.close();
}
}

3、
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String a;
String b;
a="abc";
b="abcd";
System.out.println(a.compareTo(b));//比较大小
System.out.println("Abcd".compareTo(b));//比较大小 A比a小32
System.out.println(a.length());//字符长度
for(int i=0;i<a.length();i++)//得到字符
{
System.out.println(a.charAt(i));
}
String s="12345abcdef";
System.out.println(s.substring(2));//从2号下标到结尾
System.out.println(s.substring(2,4));//从2号下标到4号下标之前
in.close();
}
}

比较是两个字符位置相减:-32 是A比a 小32。
4、
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String s="123451abcdef";
System.out.println(s.indexOf('1'));//寻找字符,单引号
System.out.println(s.indexOf('A'));
int loc=s.indexOf('1');
System.out.println(s.indexOf('1',loc+1));//从loc+1的位置重新开始找,注意加1
System.out.println(s.indexOf("345"));//寻找字符串双引号
in.close();
}
}

5、不变性
package Hello;
import java.util.Scanner;
public class hello_test {
private static final Math Maht = null;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String s="abcdef";
String s1=s.toUpperCase();
System.out.println(s);//s没发生改变
System.out.println(s1);//
in.close();
}
}

6、

********************************************************************************************************************************
七、函数
package Hello;
import java.util.Scanner;
public class hello_test {
public static boolean IsPrim(int n) //判断是否是素数的函数
{
boolean Is=true;
for(int i=2;i<=Math.sqrt(n);i++)
{
if(n%i==0)
{
Is=false;
break;
}
}
return Is;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int n=in.nextInt();//输入素数的个数
int[] Num=new int[n];//存放素数的数组
int i=0,num=2;
while(i<n)
{
if(IsPrim(num))
{
Num[i]=num;
i++;
}
num++;
}
for(int j=0;j<n;j++) //输出数组
{
System.out.print(Num[j]+" ");
}
in.close();
}
}

可以看到函数是和main()并列的。存在class下。
Java 数组 字符 函数的更多相关文章
- Java数组与函数的结合
import java.util.Scanner; public class HelloWorld { public static void main(String[] args){ // Scann ...
- java数组初始化函数
用法1:接受2个参数Arrays.fill( a1, value );注:a1是一个数组变量,value是一个a1中元素数据类型的值,作用:填充a1数组中的每个元素都是value例如:boolean[ ...
- java数组作为函数返回值
1 //将一个二维数组行和列元素互换.存到另一个二维数组 2 package test; 3 4 public class test1_8 { 5 public static int[][] huhu ...
- JS分割字符串并放入数组的函数
JS分割字符串并放入数组的函数: var InterestKeywordListString = $("#userInterestKeywordLabel").html(); v ...
- 三种java 去掉字符串中的重复字符函数
三种java 去掉字符串中的重复字符函数 public static void main(string[] args) { system.out.println(removerepeatedchar( ...
- Java关于数组操作函数
数组排序及元素查找 sort()方法对Java数组进行排序. binarySearch() 方法来查找数组中的元素,返回该元素所在的位置. import java.util.*; public cla ...
- java String.split()函数的用法分析
java String.split()函数的用法分析 栏目:Java基础 作者:admin 日期:2015-04-06 评论:0 点击: 3,195 次 在java.lang包中有String.spl ...
- 【转】java String.split()函数的用法分析
在java.lang包中有String.split()方法的原型是: public String[] split(String regex, int limit) split函数是用于使用特定的切 ...
- [java]java String.split()函数的用法分析
转自:http://swiftlet.net/archives/709 一.在java.lang包中有String.split()方法的原型是: public String[] split(Strin ...
随机推荐
- Python - loguru日志库,高效输出控制台日志和日志记录
一.安装loguru loguru的PyPI地址为:https://pypi.org/project/loguru/ GitHub仓库地址为:https://github.com/Delgan/log ...
- Java基础--方法的定义
1.为什么要有方法? 方法(又叫函数)就是一段特定功能的代码块.方法提高程序的复用性和可读性. 比如,有了方法,我们可以把要重复使用的一段代码提炼出来,然后在每个需要执行这段代码的地方去调用即可. 2 ...
- HTTP GET请求302重定向问题
1.问题描述 ① 在华为云服务器中搭建了java环境,并在tomcat中部署了一个空的web项目 ② 在此web项目中上传了一个名为:plugin_DTDREAM_LIVING_DEHUMIDIFIE ...
- 【Python challenge】通关代码及攻略(0-11)
前言: 最近找到一个有关python的游戏闯关,这是游戏中的思考及通关攻略 最开始位于:http://www.pythonchallenge.com/pc/def/0.html 第0关 题目分析 提示 ...
- 测试 - 某网站ACCESS数据库注入漏洞
元宵节 团团圆圆总少不了一篇文 测试是否有注入 测试数据库类型 后面不用注释猜到可能是access 验证一下 这里说一下MySQL和ACCESS以及MSSQL的判断语句 MySQL:and len ...
- 【vue】---- 图片懒加载
1.作用 在图片较多的页面中,页面加载性能较差.使用图片懒加载可以让图片出现在可视区域时再进行加载,从而提高用户体验. 2.原理 设置img标签的src属性为空或统一的图片路径(如加载中样式),监听页 ...
- git重新学习
一个学习网址:https://learngitbranching.js.org/ 一.对于一个新的远程空仓库 本地新建文件后推送 #初始化 git init #添加文件 git add README. ...
- Python习题集(四)
每天一习题,提升Python不是问题!!有更简洁的写法请评论告知我! https://www.cnblogs.com/poloyy/category/1676599.html 题目 如果一个 3 位数 ...
- Linux下MySQL主主同步
主主复制:主从相互授权连接,读取对方binlog日志并更新到本地数据库的过程:只要对方数据改变,自己就跟着改变. 本节介绍主主复制模式的配置. 前提条件 已安装MySQL两台服务器.服务器规划示例如表 ...
- JMM内存模型、CPU缓存一致性原则(MESI)、指令重排、as-if-serial、happen-before原则
JMM三大特性原子性 汇编指令 --原子比较和交换在底层的支持 cmp-chxg 总线加锁机制 Synchronized Lock锁机制 public class VolatileAtomicSamp ...