char不能被解除引用JAVA

Ark*_*jee 1 java

这是我的代码

import java.util.Scanner;
public class prog3{
  public static void main(String[] args){
  Scanner input = new Scanner(System.in);
    char a1 = input.nextLine().charAt(0);
    char a = Character.toUpperCase(a1);
    String b = input.nextLine();
    int size= b.length();
    char [] arr =b.toCharArray() ;
    for (int i=0;i<size;i++){
      char temp = Character.toUpperCase(arr[i]);
   if(a==temp){
    arr[i]=arr[i].replace(a,i); // here i am facing error
     System.out.print(arr[i]);
     }


    }

  }

}
Run Code Online (Sandbox Code Playgroud)

我在第14行遇到错误

行:14:char无法解除引用

我该如何解决这个问题

Col*_*n D 6

arr[i]会回来的char. char是一种原始类型,不能被解除引用.此外,它没有replace方法(或任何方法).

我不确定你要用你的代码做什么,也许你想要 arr[i]=a;

  • 可能有助于指出原因.具体来说,"解除引用"是查找引用指向堆中哪个位置的行为.基元不是引用,因此不指向堆中的任何位置,因此不能被解除引用. (3认同)