Transformando algoritmo em método

Bom dia,

Estou desenvolvendo um trabalho e explicando bem rápido ele tem que receber uma palavra e fazer isso:
Ex.
texto
te ex xt to
Fiz isso já e consegui colocar dentro de um vetor, pois vou comparar esse vetor com outro para fazer o cálculo de n-gram para calcular a similaridade entre as palavras.

Com o código abaixo eu consegui:

[code]System.out.print("Informe a primeira palavra: ");
wordOne = leT.nextLine();

		for(cont = 0; cont < wordOne.length()-1; cont++){	
			wordAux = wordOne.charAt(cont);
			wordFinalOne += wordAux;
				
				if(cont < wordOne.length()){
					wordAux = wordOne.charAt(cont+1);
					wordFinalOne += wordAux;
				}
				
			wordFinalOne += " ";	
		}
		
		String vWordOne[] = wordFinalOne.split(" ");
		
		for(cont = 0; cont < vWordOne.length; cont++){
			System.out.print(vWordOne[cont]+" ");
		}[/code]

Eu por curiosidade minha já estudei um pouco de orientação a objetos onde criava alguns métodos e realizava algumas tarefas.
A minha dúvida é, como posso transformar esse código em um método para que receba uma String(palavra) e retorne um vetor conforme está a saída desse código e como vou chamar ele quando precisar?

Desde de já agradeço.


 public String[] metodo(String wordOne) {               
            for(cont = 0; cont < wordOne.length()-1; cont++){       
                wordAux = wordOne.charAt(cont);   
                wordFinalOne += wordAux;   
                       
                    if(cont < wordOne.length()){   
                        wordAux = wordOne.charAt(cont+1);   
                        wordFinalOne += wordAux;   
                    }   
                       
                wordFinalOne += " ";       
            }   
               
            String vWordOne[] = wordFinalOne.split(" ");   
               
            for(cont = 0; cont < vWordOne.length; cont++){   
                System.out.print(vWordOne[cont]+" ");   
            }  
           return vWordOne;
           }

você irá invocar o metedo passando uma palavra:

metodo(palavra);

e terá um retorno de vWordOne;

Como fica esse código abaixo adaptando para utilizar esse método?

import java.util.Scanner;

public class Teste {
	public static void main(String[] args) {
	
		String wordOne, wordTwo, wordFinalOne, wordFinalTwo;
		char wordAux;
		int cont, contIn, contDgCompartilhado;
		Scanner leT = new Scanner(System.in);
		
		wordFinalOne = &quot;&quot;;
		//recebendo a primeira palavra
		System.out.print(&quot;Informe a primeira palavra: &quot;);
			wordOne = leT.nextLine();
			
			for(cont = 0; cont &lt; wordOne.length()-1; cont++){	
				wordAux = wordOne.charAt(cont);
				wordFinalOne += wordAux;
					
					if(cont &lt; wordOne.length()){
						wordAux = wordOne.charAt(cont+1);
						wordFinalOne += wordAux;
					}
					
				wordFinalOne += &quot; &quot;;	
			}
			
			String vWordOne[] = wordFinalOne.split(&quot; &quot;);
			
			for(cont = 0; cont &lt; vWordOne.length; cont++){
				System.out.print(vWordOne[cont]+&quot; &quot;);
			}
			
		System.out.print(&quot;\n&quot;);
		//recebendo a segunda palavra para comparação
		System.out.print(&quot;Informe a segunda palavra: &quot;);
			wordTwo = leT.nextLine();
			
		wordFinalTwo = &quot;&quot;;
			for(cont = 0; cont &lt; wordTwo.length()-1; cont++){	
				wordAux = wordTwo.charAt(cont);
				wordFinalTwo += wordAux;
					
					if(cont &lt; wordTwo.length()){
						wordAux = wordTwo.charAt(cont+1);
						wordFinalTwo += wordAux;
					}
					
				wordFinalTwo += &quot; &quot;;	
			}
			
			String vWordTwo[] = wordFinalTwo.split(&quot; &quot;);
			
			for(cont = 0; cont &lt; vWordTwo.length; cont++){
				System.out.print(vWordTwo[cont]+&quot; &quot;);
			}
		
		System.out.print(&quot;\n&quot;);
		contIn = 0;
		contDgCompartilhado = 0;
		for (cont = 0; cont &lt; vWordOne.length; cont++){
			for(contIn = 0; contIn &lt; vWordTwo.length; contIn++){
				if (vWordOne[cont].equals(vWordTwo[contIn])){
					contDgCompartilhado++;
				}
			}
		}
		
		System.out.println(contDgCompartilhado);
	}
}

É a mesma coisa que o junior postou porem naquele caso vc tem 1 chamada neste caso terá 2 chamadas:

Scanner leT = new Scanner(System.in);  
 System.out.print("Informe a primeira palavra: ");  
String  word = leT.nextLine();  
String []vWordOne = metodo(word);
System.out.print("Informe a segunda palavra: ");  
word = leT.nextLine();  
String []vWordTwo = metodo(word);

 System.out.print("\n");  
        contIn = 0;  
        contDgCompartilhado = 0;  
        for (cont = 0; cont < vWordOne.length; cont++){  
            for(contIn = 0; contIn < vWordTwo.length; contIn++){  
                if (vWordOne[cont].equals(vWordTwo[contIn])){  
                    contDgCompartilhado++;  
                }  
            }  
        }  
          
        System.out.println(contDgCompartilhado);  

Ele está dando apenas um erro agora.

import java.util.Scanner;

public class Teste {
	
		String word, wordFinalOne;
		char wordAux;
		int cont;
			
		public String[] metodo(String word) {     
		wordFinalOne = &quot;&quot;;
	           for(cont = 0; cont &lt; word.length()-1; cont++){         
	               wordAux = word.charAt(cont);     
	               wordFinalOne += wordAux;     
	                        
	                   if(cont &lt; word.length()){     
	                       wordAux = word.charAt(cont+1);     
	                       wordFinalOne += wordAux;     
	                   }     
	                        
	               wordFinalOne += &quot; &quot;;         
	           }     
	                
	           String vWordOne[] = wordFinalOne.split(&quot; &quot;);     
	                
	           for(cont = 0; cont &lt; vWordOne.length; cont++){     
	               System.out.print(vWordOne[cont]+&quot; &quot;);     
	           }    
	      return vWordOne;  
	      }
			
		
public static void main(String[] args) {
		int cont, contIn, contDgCompartilhado;
		String word;
		
		Scanner leT = new Scanner(System.in);
		
		System.out.print(&quot;Digite a primeira palavra: &quot;);
			word = leT.nextLine();
		String []vWordOne = metodo(word);  
		
		System.out.print(&quot;Digite a primeira palavra: &quot;);
			word = leT.nextLine();
		String []vWordTwo = metodo(word);  
		
		contIn = 1;
		contDgCompartilhado = 0;
		
		for (cont = 0; cont &lt; vWordOne.length; cont++){
			for(contIn = contIn; contIn &lt; vWordOne.length; contIn++){
				if (vWordOne[cont].equals(vWordOne[contIn])){
					contDgCompartilhado++;
				}
			}
		contIn += 1;
		}
		
		System.out.println(contDgCompartilhado);
	}
}

O erro está dizendo:
[color=red]Cannot make a static reference to the non-static method metodo(String) from the type Teste[/color]

Para corrigir esse erro, declarei as variáveis dentro do método e mudei ele para Static.
Mas isso não é viável pois vou precisar usar essas variáveis de novo em outro método.

Consegui resolver:

Osvaldo_berg w = new Osvaldo_berg();
		
		System.out.print("Digite a primeira palavra: ");
			word = leT.nextLine();
		String []vWordOne = w.metodo(word);  
		
		System.out.print("Digite a segunda palavra: ");
			word = leT.nextLine();
		String []vWordTwo = w.metodo(word);