class Solution {
public int[] removeDuplicates(int[] nums) {
int i=0;
int arr[]= new int[nums.length-1];
for(int j =1; j<nums.length-1; j++){
if(nums[i] == nums[j]){
continue;
}
else{
nums[i]=arr[i];
}
i++;
}
return arr;
}
}
**error : Line 7: error: incompatible types: int[] 无法转换为 int [in Driver.java] int ret = new Solution().removeDuplicates(param_1); ^ **
答案 0 :(得分:0)
您的代码中有多个错误,例如 ->
您正在从 removeDuplicates()
方法返回一个整数数组,但将其分配给一个整数变量,这就是为什么您收到错误消息
int[] 无法转换为 int
您将零分配给 nums[i]=arr[i];
nums 数组,因为 Array 是非原始类型,因此它们的默认值为零。
public static int[] removeDuplicates(int[] nums) {
int index = 0;
int arr[]= new int[nums.length-1];
Arrays.sort(nums);
for(int j =1; j<nums.length-1; j++){
if(nums[j-1] == nums[j]){
continue;
} else {
arr[index++] = nums[j-1];
}
}
return Arrays.copyOfRange(arr, 0, index);
}
//Driver method
public static void main(String[] args) {
//You may have converted a string into integers
int inetgerarray[] = {1,2,2,3,4,1,2,4,5,6,7,6,9,10,2,34,5,6,7,8,4,7};
int a[] = removeDuplicates(inetgerarray);
for(int i=0;i<a.length;i++)
System.out.println(a[i]);
}