一:fill的用法
语法:
fill(int[] arr,int value)
arr为数组,number是储存的值
fill(int []arr,int fromlndex,int tolndex,int value)
fromlndex 为指定赋值的索引开头(包含此个元素)
tolnde 为指定赋值的索引结束(不包含此个元素)
代码实现:
import java.util.Arrays;//类为java.util.Arrays
public class Fill{
public static void main(String[] args){
Fill case1=new Fill();
case1.number();
Fill case2=new Fill();
case2.zifu();
}
//数字数组的
public void number(){
int a[]=new int [5];//创建一个长度为10的数组;
Arrays.fill(a,666);//所以元素全部用666来赋值
for(int i=0;i<5;i++)//查看数组的每个元素
System.out.println(\"引索为\"+i+\"的为:\"+a[i]);
Arrays.fill(a,2,5,888);//引索为2(包括)到5(不包括)的元素全部用666来赋值
for(int i=0;i<5;i++)//查看数组的每个元素
System.out.println(\"引索为\"+i+\"的为:\"+a[i]);
}
//字符数组的
public void zifu(){
String b[]=new String[5];
Arrays.fill(b,\"Hello\");
for(int i=0;i<5;i++)
System.out.println(\"引索为\"+i+\"的为:\"+b[i]);
Arrays.fill(b,2,5,\"JAVA\");
for(int i=0;i<5;i++)
System.out.println(\"引索为\"+i+\"的为:\"+b[i]);
}
}
附带输出:
二:问题:“java无法从静态上下文中引用非静态,非静态方法无法从静态上下文中引用”的解决
例:交换a与b的值
错误代码如下:
public class JAVAq{
public static void main(String []args){
int a=10,b=7;
System.out.println(\"交换前:a=\"+a+\",b=\"+b);
huan(a,b);
}
public void huan(int a,int b){
int c;
c=a;a=b;b=a;
System.out.println(\"交换后:a=\"+a+\",b=\"+b);
}
}
显示为
出现原因:暂时不知…后期补上
解决方法:
方法一:在引用的函数处也加上static
public void huan(int a,int b) 改为 public static void huan(int a,int b)
方法二:用对象调用
在main()函数中加入(即将错误代码中的huan(a,b)改为如下代码)
JAVAq sc=new JAVAq();
sc.huan(a,b);
则编译结果如图:
来源:https://blog.csdn.net/weixin_62995761/article/details/123286840
本站部分图文来源于网络,如有侵权请联系删除。