Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: Caratteri invertiti

  1. #1

    Caratteri invertiti

    stupido esercizio.
    devo stampare il primo e l'ultimo carattere invertiti.
    così funziona:
    codice:
        public static void main(String[] args) {
    //        String nome=JOptionPane.showInputDialog("immetti il nome:");
            String nome = "matteo";
            char primo = nome.charAt(0);
            char ultimo = nome.charAt(5);
            String mezzo = nome.substring(1, 5);
            System.out.println(ultimo + mezzo + primo);
        }
    però così so a priori il numero di lettere che contiene il nome.
    e se io invece nn sapessi il numero di lettere a priori??
    ad esempio è l'utente che immette il nome tramite un JOptionPane; in questo caso la lunghezza è variabile.

    ps: teoricamente nn dovrei usare cilci for/while.

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    La cosa fondamentale imparando a programmare è imparare a leggere la documentazione... ovvero non soffermarti al primo metodo di una classe, ma legglili tutti e poi vedi quel che fa al caso tuo.

    Per esempio, String ha un metodo che ritorna la lunghezza della stringa in analisi, o anche un metodo per convertire una stringa in un array di caratteri...
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    ci sono length() e toCharArray().
    ma mi sono dimenticato che teoricamente nn dovrei usare array.

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non cambia niente: l'ultimo carattere della stringa è in length-1
    substring mi pare di capire che sai come si usa... metti insieme le cose.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    l'ultimo è in lenght-1, ma gli altri??
    è questo che mi manca.
    cioè, la prima lettera stampata deve essere l'ultima, e per fare questo ho usato:
    int lunghezza = nome.length();
    String ultima = nome.substring(lunghezza - 1);

    ma per la prima invece?
    nn c'è una specie di length() - n, dove n rappresenta tutti le altre lettere che nn si sa quante sono?

  6. #6
    Utente di HTML.it L'avatar di Nexs87
    Registrato dal
    Jun 2010
    Messaggi
    29
    Codice PHP:
    char primo nome.charAt(0);
    char secondo nome.charAt(nome.length()); 

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da fermat
    ma per la prima invece?
    O_o
    Il primo indice è sempre 0
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    1,123
    Originariamente inviato da fermat
    l'ultimo è in lenght-1, ma gli altri??
    è questo che mi manca.
    Ti è stata data la soluzione riguardante il primo e l'ultimo, per cui ti rispondo solo alla prima domanda..

    Gli altri li trovi in length-2, length-3..e così via!

  9. #9
    è vero il primo è sempre zero e nn ci ho pensato...

    per gli altri in mezzo.
    se io metto length-2, length-3, ecc nn ho cmq il problema di nn sapere quante sono le lettere che compongono il nome?
    ugo è un pò diverso da alessandro no??

    char mezzo = nome.charAt(nome.length()); mi da un errore in esecuzione:
    Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 6
    at java.lang.String.charAt(String.java:686)
    at esercizilibro.Es24.main(Es24.java:12)
    Java Result: 1

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da fermat
    char mezzo = nome.charAt(nome.length()); mi da un errore in esecuzione:
    Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 6
    Gli indici vanno da 0 a lunghezza - 1.
    codice:
    ciao
    0123
    
    lunghezza = 4
    chatAt(4) non esiste
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.