这个为啥是错的呀,加了string也不对,也会报错

Log.d(tag:"tag",msg:"---执行了bigger---");

img

把 tag: 和 msg: 去掉

tag:和msg:不需要哈
AS编辑器默认增加形参提示仅仅是一种编程友好提醒,实际传参无需添加

这个一行代码 去掉 tag: 和 msg:,估计你是照着某个视频敲的把,这俩实际上都只是编译器的灰色提示,不是实际的代码。

Log.d(tag:"tag",msg:"---执行了bigger---");

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/240883
  • 除此之外, 这篇博客: 认识String类(一)中的 3.反射修改常量字符串 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • public static void main(String[] args) throws NoSuchFieldException {
           String str = "aello";
           Class<?> c1 = String.class;
            // 获取 String 类中的 value 字段. 这个 value 和 String 源码中的 value 是匹配的.
            Field valueField = c1.getDeclaredField("value");
           // 将这个字段的访问属性设为 true
            valueField.setAccessible(true);
           // 把 str 中的 value 属性获取到.
            char[] value = (char[]) valueField.get(str);
           // 修改 value 的值
            value[0] = 'h';
            System.out.println(str);
        }
    //此时通过反射将字符串改为hello