數組中兩數相加等於特定值,以字符串的形式輸出兩數角標

import java.util.*;/*輸入util包內全部類*/
/*
* 目標:給定一個整數數組和一個目標值,
* 找出數組中和爲目標值的兩個數,
* 一樣的元素不能被重複利用。
* 輸出數組中符合要求的兩個數的角標*/
class HelloWorld {
    public static void main(String[] args){
        HelloWorld hello = new HelloWorld();/*建立hello對象*/
        Scanner in = new Scanner(System.in);/*建立Scanner對象*/
        System.out.print("輸入目標值:");
        int a = in.nextInt();/*輸入目標值*/
        System.out.print("輸入數組長度:");
        int c = in.nextInt();/*輸入數組長度*/
        System.out.print("輸入數組元素:");
        int[] nums = new int[c];/*定義一個數組長度爲c的整型數組nums*/
        for(int i=0;i<nums.length;i++){
            nums[i] = in.nextInt();//將鍵盤輸入值賦予數組元素,以空格隔開
        }
        hello.twoSum(nums,a);/*調用twoSum方法*/
    }
    public int[] twoSum(int[] nums, int target){/*定義了一個返回值爲int[],方法名爲twoSum的方法,傳遞給twoSum的參數有int類型的數組nums和int類型的target*/
        for (int i = 0; i < nums.length; i++) {/*雙層for循環對數組進行比較和求和*/
            for (int j = i+1; j < nums.length; j++) {
                if(nums[i] == nums[j]){/*數組元素比較*/
                continue;/*跳出這次循環*/
                }else{
                   int twoSum = nums[i]+nums[j];/*數組元素求和*/
                   if(twoSum == target){/*將所求和與目標值進行比較*/
                       int[] a = new int[]{i,j};
                       System.out.println("返回值爲:"+Arrays.toString(a));/*使用toString( )方法將數組轉換成字符串*/
                   }
                }
            }
        }
        return nums;
    }
    }

輸出結果示例:java

相關文章
相關標籤/搜索