求解java中 方法

public class Demo34 {
	
	public static void main(String[] args) {
		
		int a =10;
		m(a);
		System.out.println("main--->"+ a);
	}
	public static int m(int a) {
		a++;
		System.out.println("m----->"+ a);
		return a;
	}
}

为什么我有return值在main方法中输出的依旧不是11啊

那如果我想再main方法中输出11应该在哪里可以改

public static void main(String[] args) {

        int a =10;
        a = m(a);
        System.out.println("main--->"+ a);
    }
    public static int m(int a) {
        a++;
        System.out.println("m----->"+ a);
        return a;
    }

调用m方法返回后再给a赋值

因为你这个a只是值传递,不是引用传递,所以在函数内部无法修改外部传入的值。参数实际进行了一个复制品

java函数中参数使用的是值传递,函数内部处理时拷贝了参数的备份进行处理,不会影响到参数的值,资料可以参考:https://blog.csdn.net/SummerOfFoam/article/details/109570841

想在main中输出11,将第6行改为 a=m(a) 即可。