Passagem de parametro

Pessoal observem o exemplo abaixo:

StringBuffer  t = new StringBuffer();
t.append("Duvida de java");
System.out.println(t.substring(2,5));

Como faço para passar um parametro para uma funçao desta forma… ou seja, passar valor do StringBuffer … t.substring…
pq sei q poderia criar uma função assim: substring(t,2,5);

Desde ja: agradeço.

Primeiro Java não tem função e sim métodos :lol:

Não entendi muito bem sua pergunta, ve se foi isso que tu quis dizer…

StringBuffer t = new StringBuffer();
t.append("Essa é a sua dúvida?");
System.out.println(teuMetodo(t,2,5));
//mais alguns códigos inúteis...


public String teuMetodo(StringBuffer sb, int posInicial, int posFinal){
      return sb.toString().substring(posInicial, posFinal);
}

Abraços

A duvida é a seguinte: Como é q os projetistas de java, conseguem passar o parametro… desta forma por exemplo…
t.substring(1,10)… entende… o stringBuffer ‘t’ esta sendo passado, nao dentro dos parenteses… entendeu agora… como criar… o metodo…e passar da segunte forma… t.teumetodo(1,10);

Não entendi bem sua pergunta.

Mas pelo que vi, a variavel “t” não está sendo passada como parametro para nenhum metodo, o que está acontecendo é a chamada de um metodo de StringBuffer chamado substring() e para esse metodo estão sendo passados 2 parametros int, o retorno do metodo substring() por sua vez está sendo passado para o metodo println(), só isso, não vi lugar algum onde o StringBuffer é passado como parametro.

Suspiro10… uma explicaçao um pouco mais detalhada.

StringBuffer é uma classe… com seus n métodos e atributos…

um dos métodos da StringBuffer é o append(), existe diversas sobrecargas para este método, e uma delas recebe uma String como parametro

t.append("Duvida de java")

isso faz com que o StringBuffer guarde dentro dele essa String “Duvida de java”.

Depois outro método do StringBuffer é o substring, que recebe dois numeros inteiros por parametro, e retorna uma nova String.

t.substring(2,5)

Então internamente ele ja tem a String “Duvida de java”, assim ele pega essa String, da posição 2 a 5, e cria uma nova String retornando essa nova String para quem chamou o método substring(int, int).

entendeu?