A. java定義子函數不能直接交換數組中的元素嗎
可以的,你寫的方法不對。
publicclassSwapArray{
publicstaticvoidmain(String[]args){
intarr[]={1,2,3,4,5,6};
print(arr);
swap(arr,0,1);
print(arr);
}
publicstaticvoidswap(int[]arr,intx,inty){
inttemp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
publicstaticvoidprint(int[]arr){
for(inta:arr){
System.out.print(a+" ");
}
System.out.println();
}
}
結果:
B. 用java代碼實現編寫子函數:(1)用冒泡法將一個數組排成升序的函數---SUB1;(2)在升序數組中插入一個
publicclassHandleArray{
publicstaticvoidmain(String[]args){
HandleArrayhandleArray=newHandleArray();
int[]arr=newint[]{19,4,3,7,2,5,4};
arr=handleArray.orderArrayAsc(arr);
for(inti=0;i<arr.length;i++){
System.out.print(arr[i]+"");
}
System.out.println();
arr=handleArray.insertIntoAscArray(arr,20);
for(inti=0;i<arr.length;i++){
System.out.print(arr[i]+"");
}
}
//數組升序排列函數
publicint[]orderArrayAsc(int[]array){
for(inti=0;i<array.length-1;i++){
for(intj=i+1;j<array.length;j++){
if(array[i]>array[j]){
inttmp=array[i];
array[i]=array[j];
array[j]=tmp;
}
}
}
returnarray;
}
//在升序數組中插入一個數值函數
publicint[]insertIntoAscArray(int[]array,intval){
int[]tmpArray=newint[array.length+1];
intn=0;
//當前數比數組中的所有數都大
if(array[array.length-1]<val){
n=array.length;
}else{
//比較大小,找出該數值應該在數組中的位置
for(inti=0;i<array.length;i++){
if(array[i]>=val){
n=i;
break;
}
}
}
System.array(array,0,tmpArray,0,n);
tmpArray[n]=val;
System.array(array,n,tmpArray,n+1,array.length-n);
returntmpArray;
}
}
C. Java大神請進!如何從子函數返回到主函數中
我想樓主以前沒用過java吧,不知道我猜的對不對?如果說錯了還請樓主見諒。
先說一下java程序的結構,main函數是程序的入口也可以叫做主函數,其他函數是這個類的方法,但是不叫子函數。一個java程序只執行main函數中寫的東西,是不執行樓主所說的子函數的。只有在main方法中調用了類的方法才會執行。如何調用呢?一般情況下是在main方法中ddd d=new ddd();聲明一個對象d,然後d.choujiang() 調用這個方法。而樓主寫的程序還特別點,即所有的屬性和方法前都有static,我不知道樓主是否清楚其含義,既然聲明為static的方法,那在調用的時候就不必構件對象,直接在主函數中寫ddd.choujiang() 便可以調用。這樣可以按樓主的思路繼續網下調用其他的方法,程序會順序網下執行,希望可以幫到樓主。(補充,這樣的寫法不是面向對象的程序設計思路,建議樓主可以看看java編程思想)
D. java里怎麼把子函數里得的到值傳遞給另一個函數使用
函數A的返回值(可以是基本變數,字元串,對象),用正確的變數接收,然後另一個函數的參數為該變數即可。
比如public int a() {..}該方法返回一個int值,你用一個int 類型的變數a接收,然後另一個函數public void b(int num){}。 在主函數中先執行方法a等到一個返回值賦給一個變數,然後再調方法b,參數傳接收的變數a即可
E. Java中 如何實現 子函數怎麼調用主函數中輸入的內容
把主函數中輸入的內容作為參數傳遞到子函數
F. Java實現,編寫一個子函數,子函數的功能為輸出Fabonacci數列的前10項,並在主函數調用該子函數。
運用遞歸來寫fibonacci的演算法public static void main(String args[]){ //主函數 int index = 0; while(index <10) { System.out.println(fibonacci(index++)); } } private static int fibonacci(int a) //子函數{ if (a == 0) return 0; if (a == 1) return 1; return fibonacci(a - 1) + fibonacci(a-2);}
G. java中為什麼我調用子函數就會出錯
你的Java程序我幫你改完了,你看看吧(改動的地方見注釋)
packagehello;//這里package你好啊;改成英文的包名packagehello;
importjava.util.*;
publicclassMyMath{//這里Math最好改成MyMath,防止與java.lang.Math重名
publicstaticvoidmain(String[]args){
inti;
Scannerinput=newScanner(System.in);
intn=input.nextInt();
ints=0;
for(i=0;i<n;i++)
{
s=s+fun(i);
}
System.out.println("s="+s);
}
publicstaticintfun(intx)//這里去掉末尾的分號
{
if(x==1||x==0)//這里if(x==1)改成if(x==1||x==0)考慮0的階乘等於1
return1;//這里returnx=1;改成return1;
else
returnx*fun(x-1);
}
}
運行結果
3
s=4
H. java的while的一個子函數if中,我即想返回一個值,又想在返回值的同時跳出整個while,怎麼辦
在返回值的後面加上一句 break;就好了
哪裡想返回哪裡加break;他的意思是跳出循環
I. 請問一個java的子函數如果沒有return可以嗎
你要,一個函數有沒有return,取決於該函數有沒有返回值,如果返回值不為void,那麼該函數必須有return。如果返回值為void,那麼可以寫return也可以不寫。例子如下:
public boolean exists(){
//代碼
return false ;
}
public void say(){
//代碼
return ; //可寫可不寫,正常情況下,人們的習慣是不寫。
}
J. 請問,Java程序中,有主函數跟子函數,不會直接輸出結果,一般要怎麼調用還有怎麼應用於我的數據,GPR數
你理解錯了Java程序結構了。在Java中根本沒有子函數的說法了。
Java中的所有函數都屬於類,沒有高低上下之分。除了兩種函數比較特殊,一個是構造函數,一個是main(String[] args),這個是俗稱的主函數。
一個類,如果擁有形如public static void main(String[] args)形式的函數,那麼使用Java.exe命令執行這個類時,會從這個函數進入執行。反之,沒有這個函數的Java類,是不能被Java.exe命令執行的。
而一些類,是為了充當功能模塊或表達數據的,這時,當前正在執行的代碼可以通過new一個這個類的實例,間接調用了它的構造函數執行;或者,直接調用這個類的static方法;再或者,有了實例後,使用實例調用它的成員方法。